An open API service indexing awesome lists of open source software.

https://github.com/gayatripisya/angular

This project covers core Angular concepts with practical code examples. Each module focuses on essential topics, from TypeScript basics to advanced features like routing, services, and testing, helping developers build a strong foundation in Angular.
https://github.com/gayatripisya/angular

angular css html typescript

Last synced: about 2 months ago
JSON representation

This project covers core Angular concepts with practical code examples. Each module focuses on essential topics, from TypeScript basics to advanced features like routing, services, and testing, helping developers build a strong foundation in Angular.

Awesome Lists containing this project

README

          

# Angular
Welcome to the **Angular Course Repository**! This repository includes resources, modules, and objectives for an in-depth Angular course. You'll progressively learn core Angular concepts, work on practical labs, and complete a comprehensive project that covers advanced features, optimization, and deployment.

---
## 1. Node.js
Node.js is required for running Angular projects and using npm (Node Package Manager) to install dependencies.

- Download and install Node.js from [nodejs.org](https://nodejs.org).

## 2. Angular CLI
Angular CLI is a command-line interface for Angular development.

- Install Angular CLI globally using the following command:

```bash
npm install -g @angular/cli
## Creating a New Angular Project with Angular CLI

Once Angular CLI is installed, follow these steps to create a new Angular project:

1. Create a new Angular project by running the following command in your terminal:

```bash
ng new my-angular-app
```

2. Follow the prompts to set up your project (e.g., choose whether to include routing, select a CSS preprocessor).

3. Navigate into the project folder:

```bash
cd my-angular-app
```

4. Run the application:

```bash
ng serve
```

5. Open a browser and navigate to `http://localhost:4200/` to view your app.

# Standalone
standalone: true: The component can be used without a module. It can import its own dependencies..

standalone: false: The component must be part of a module. It depends on the module for its setup.


### TypeScript Basics
- **Objectives:** Learn TypeScript basics and its integration with Angular.
- **Topics:**
- Introduction to TypeScript
- TypeScript features and syntax
- Variables, types, functions
- Classes and interfaces
- TypeScript in Angular

### Angular Architecture
- **Objectives:** Understand the building blocks of Angular applications.
- **Topics:**
- Components, templates, and modules
- Component lifecycle hooks
- Creating and using Angular modules
- Angular application structure and best practices

### Data Binding and Directives
- **Objectives:** Master data binding and directives.
- **Topics:**
- Property and event binding
- Two-way data binding with `ngModel`
- Built-in directives (`ngIf`, `ngFor`, `ngClass`, `ngStyle`)
- Custom directives

### Component Communication
- **Objectives:** Manage communication between components.
- **Topics:**
- Input and Output decorators
- Event emitters
- Parent-child communication
- ViewChild and ContentChild decorators

### Services and Dependency Injection
- **Objectives:** Learn the role of services and dependency injection.
- **Topics:**
- Creating and using services
- Dependency injection
- Hierarchical injectors
- Managing application-wide services

### Routing and Navigation
- **Objectives:** Master routing and navigation mechanisms.
- **Topics:**
- Configuring routes
- RouterLink and router-outlet
- Route guards and lazy loading
- Child routes and nested routing

### Angular Forms
- **Objectives:** Handle forms and user inputs.
- **Topics:**
- Template-driven and reactive forms
- Form validation and custom validators
- FormBuilder and form arrays

### HTTP Client
- **Objectives:** Make HTTP requests and handle responses.
- **Topics:**
- Introduction to Angular HttpClient
- GET, POST, PUT, DELETE requests
- Handling responses and errors
- Interceptors and authentication

### Observables and RxJS
- **Objectives:** Use observables and RxJS.
- **Topics:**
- Introduction to RxJS
- Observables, observers, subscriptions
- RxJS operators (`map`, `filter`, `mergeMap`, `switchMap`)
- Observables with Angular HttpClient

### Advanced Components and Directives
- **Objectives:** Develop advanced components and custom directives.
- **Topics:**
- Dynamic components and `ngTemplateOutlet`
- Content projection and `ng-content`
- Custom attribute and structural directives
- Advanced component styling

### State Management
- **Objectives:** Effectively manage application state.
- **Topics:**
- State management with services
- NgRx (Store, Effects, Reducers)
- Best practices for state management

### Testing Angular Applications
- **Objectives:** Test Angular applications.
- **Topics:**
- Unit testing with Jasmine and Karma
- Component testing with TestBed
- End-to-end testing with Protractor

### Performance Optimization
- **Objectives:** Optimize performance in Angular.
- **Topics:**
- Change detection strategies
- Lazy loading and preloading modules
- Performance monitoring and profiling

### Internationalization and Accessibility
- **Objectives:** Implement i18n and accessibility features.
- **Topics:**
- Internationalization (i18n) setup
- Accessibility best practices

## Recommended Textbooks and Resources

- **Documentation:** [Angular Documentation](https://angular.io/)
- **Books:**
- *Angular Up & Running* by Shyam Seshadri
- *Pro Angular* by Adam Freeman
- **Online Courses:** Angular courses on Udemy, Coursera, Pluralsight
- **Tools:** Visual Studio Code, Angular CLI, Postman

---

Happy coding and good luck on your Angular journey!