Introduction
Angular is a TypeScript framework for building single-page applications — maintained by Google, built around reusable components, and opinionated enough that most Angular projects share the same basic shape.
Angular vs. AngularJS
Worth saying plainly up front: this course is about Angular (versions 2 and later), not the older AngularJS (1.x). They share a name and a creator, but Angular is a ground-up rewrite — different language (TypeScript instead of plain JavaScript), different component model, different everything under the hood. If you find a tutorial mixing ng-repeat and *ngFor in the same breath, it's confusing two different frameworks. This site has a separate course specifically for AngularJS if that's what you're looking for.
Creating a project with the CLI
Angular projects are almost always created with the official CLI, which scaffolds a working project, a dev server, and a build pipeline in one command:
npm install -g @angular/cli ng new my-app cd my-app ng serve
✔ Application bundle generation complete. Local: http://localhost:4200/ Watch mode enabled. Watching for file changes...
ng new asks a few setup questions (routing, stylesheet format) and generates a full project — source files, a test setup, and configuration. ng serve starts a dev server that rebuilds automatically whenever you save a file.
What the CLI generates
A fresh project's src/app folder contains a handful of files that define your first component:
src/app/ app.component.ts (component logic) app.component.html (component template) app.component.css (component styles) app.config.ts (application-wide configuration) main.ts (bootstraps the app)
Every piece of UI in Angular is built the same way this first one is: a TypeScript class paired with an HTML template and (usually) its own stylesheet. The next lesson covers exactly what goes into one.