- [Angular] Initializing Angular Project, Creating Components, Routing, Directives, Modules
- [Angular] Services, Dependency Injection, Lifecycle Methods, Custom Pipes, Custom Directives, Inputs, Outputs
- [Angular] Forms, Reactive Forms, Form Validation, Observables, Pipes
- [.NET] Getting familiar with c# .NET, Initializing and setting new Project, explainig design pattern and how it works, basic OOP knowledge, setting up PGAdmin
- [.NET] Login Register with Identity - explaining services, extension methods, Custom exceptions, JWT, Password Hashing
- [.NET] Creating Pizza Endpoint - Mappings, Dtos, Automapper
- [.NET] Creating Order Endpoint - Connecting with pizza
- [.NET] Finishing Endpoints logic, SOLID, DRY, KISS, organizing program.cs with best practises
- [Angular] Authentication, Guards, Interceptors
- [Angular] HTTP Client, RXJS Operators, Error Handling
- Install NodeJS - https://nodejs.org/en/download/ (used only the first time) [LTS version]
- Confirm installation -
node -v
andnpm -v
should return a value (ex. 18.17.1 and 6.14.15) - Install Angular CLI -
npm install -g @angular/cli
(used only the first time) - For our project we will need the latest version of the Angular CLI which is version 18. If you want to specify an exact version, you can add that in the command -
npm install -g @angular/cli@18
ng version
to check if it's installed- Create a new folder for the project and open the folder in VS Code
- Open terminal and create new project -
ng new name-of-the-project
- Would you like to add Angular routing? - Y - we will need this setting to enhance navigation by allowing users to move between different views or pages seamlessly.
- Do you want to enable Server-Side Rendering (SSR) and Static Site Generation (SSG/Prerendering)? - N - SSR means that the server processes your application, generates the HTML for the page, and sends it to the client. SSG means that pages are pre-rendered at build time, allowing them to be served as static HTML.
- Which stylesheet format would you like to use? - SCSS - Angular offers different pre-processors and stylesheets to choose from. We will be using SCSS which extends CSS with variables, nested rules, and more powerful mixins
- Would you like to share pseudonymous usage data about this project with the Angular Team at Google (not important) - N
- Navigate to newly created folder for project
cd client
- if you used a different name than client, change "client" with the name of the folder that was created while usingng new <THE_NAME>
- Run app
npm start
- Open project in browser - http://localhost:4200
- Install Angular Material -
ng add @angular/material
- Choose a prebuilt theme name (ex. the first one), or "custom" for a custom theme (custom requires additional setup with SCSS variables https://material.angular.io/guide/theming)
- Set up global Angular Material typography styles - Y
- Include the Angular animations module? - Include and enable animations
- Create component -
ng generate component components/<NAME_OF_COMPONENT> --standalone
- Create service -
ng generate service services/<NAME_OF_SERVICE>
- Create guard -
ng generate guard guards/<NAME_OF_GUARD>
- Create pipe -
ng generate pipe pipes/<NAME_OF_PIPE> --standalone
- Create directive -
ng generate directive directives/<NAME_OF_DIRECTIVE> --standalone
- skip tests (this is added to each of the previous commands to prevent creating unnecessary .spec files) -
--skip-tests
- AutoImport https://marketplace.visualstudio.com/items?itemName=steoates.autoimport
- Angular Language Service https://marketplace.visualstudio.com/items?itemName=Angular.ng-template
-
Install visual studio 2022 -
STEP BY STEP GUIDE => https://learn.microsoft.com/en-us/visualstudio/install/install-visual-studio?view=vs-2022
-
Install and set up PostgreSQL and PGAdmin4 -
STEP BY STEP GUIDE => https://commandprompt.com/education/how-to-download-and-install-postgresql/