Skip to content

MiljanSjekloca01/foodstore-course

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Angular + NodeJs + Express + MongoDb

URL: https://angularfoodstore-zgfy.onrender.com

Install development tools

Create Angular App - Steps

Create project's folder Install @angular/cli Create App as frontend Add Header

Generate Component Add Html Add CSS List Foods

Create Food model Create data.ts Add sample foods Add images to assets Create Food service Create Home component Add ts Add html Add css Search

Add method to Food service Add search route Show search result in Home component Generate search component Add to home component Add ts Add html Add css Tags Bar

Create Tag model Add sample tags to data.ts Food service Add get all tags method Add get all foods by tag method Add tags route Show tag result in Home component Generate Tags component Add to home component Add ts Add html Add css Food Page

Add method to food service Generate Food Page component Add Route Add ts Add html Add css Cart Page

Create CartItem Model Create Cart Model Generate Cart service Add to Cart Button in Food Page Generate Cart page component Add Route Add ts Add html Add css Not Found!

Generate Component Add ts Add html Add css Add To Pages Home Page Food Page Cart Page Connect To Backend

Create backend folder npm init npm install typescript Create tsconfig.json Create .gitignore Copy data.ts to backend/src npm install express cors Create server.ts install @types Add Apis npm install nodemon ts-node --save-dev Add urs.ts to frontend Add HttpClient module Update food service Login Page

Generate Component

Add to routes Add ts Add html Import Reactive Forms Module Add Css Add Login Api

Use json Add jsonwebtoken Test Using Postman Generate User Service

Generate User model Add User Subject Add Login Method Add User Urls Generate IUserLogin interface Add ngx-toastr Import Module Import BrowserAnimationsModule Add styles in angular.json Add to Header Add Local Storage methods Add Logout Method Add to Header Make Components For Login Page

Input Container Input Validation Text Input Default Button Connect Login API To MongoDB Atlas

Moving Apis into routers Create MongoDB Atlas Create .env file Install mongoose dotenv bcryptjs express-async-handler Connect to MongoDB Atlas Use MongoDB instead of data.ts in apis Register User

Add Register api Add Register service method Add Register link Add Register Component Loading!

Add Image Add Component Add Service Add Interceptor Checkout Page

Create Order Model Create Checkout Page Component Add To Router Add User to User Service Add Cart to Cart Service Create Order Items List Component Adding Map To The Checkout Page Add Leaflet npm package Add @types/leaflet Add Css to angular.json Add AddressLatLng to Order Model Create Map component Add to checkout page Add TS Change app-map selector to map Add Html Add CSS Add Auth Guard Save Order Add Order Model Add Order Status Enum Add Auth Middleware Add Order Router Add create API Add Order Urls to urls.ts Add Order Service Add create Method Add Auth Interceptor Payment Page

Generate Component Add 'getOrderForCurrentUser' api Add Order Service method Connect Component to Service Make the map component readonly Adding Paypal

Generate Component Add to payment page Get Paypal client Id Add Paypal JS to index.html Set up Paypal button Add Pay api to order router Get Paypal sandbox account

Order Track Page Generate Component Add to routes Add API Add to urls.ts Add method to order.service Add HTML Add CSS