# Introduction to Angular tutorial - the First Angular app
This tutorial consists of lessons that introduce the Angular concepts you need to know to start coding in Angular.
If you're just starting out with Angular, completing the lessons in sequence provides the best learning experience, because each lesson builds on the previous lessons.
After you're familiar with Angular, you can come back into any lesson for a refresher.
If you're more experienced, the lessons in this tutorial can be completed individually.
You can do as many or as few as you would like and you can do them in any order.
## Before you start
For the best experience with this tutorial, review these requirements to make sure you have what you need to be successful.
1.**Created an HTML web page by editing the HTML directly.**
This tutorial makes references to HTML elements and the Document Object Model (DOM). If these terms are not familiar, review HTML programming before you start this tutorial.
1.**Programmed web site content in JavaScript.**
This tutorial has many examples of TypeScript programming, which is based on JavaScript. TypeScript-specific feature are explained, but familiarity with JavaScript programming is necessary to understand the lessons in this tutorial.
1.**Read Cascading Style Sheet (CSS) content and understand how selectors are used.**
This tutorial does not require any CSS coding, but if these terms are not familiar, review CSS and selectors before you start this tutorial.
1.**Used command-line instructions to perform tasks on your computer.**
Angular uses the Angular CLI to perform many tasks. This tutorial provides the commands to use and assumes that you know how to open the command line tool or terminal interface in which to use them. If you aren't sure how to use a command line tool or terminal interface, review that before starting this tutorial.
These lessons can be completed by using a local installation of the Angular tools or by using StackBlitz in a web browser. Local Angular development can be completed on Windows, MacOS or Linux based systems.
Working on your own computer has the advantage of being able to save your work locally for future reference. Working in StackBlitz allows you to work through the lessons without loading any software on your own computer.
Angular requires an active LTS or maintenance LTS version of Node. Let's confirm your version of `node.js`. For information about specific version requirements, see the engines property in the [package.json file](https://unpkg.com/browse/@angular/core@15.1.5/package.json).
1. [Visual Studio Code](https://code.visualstudio.com/)
2. As an optional, but recommended step you can further improve your developer experience by installing the [Angular Language Service](https://marketplace.visualstudio.com/items?itemName=Angular.ng-template)