Developing a ShoppingCart (Ecommerce) Application using Angular-9.
Live Demo : PayId Shop
This project was generated with Angular CLI version 9.1.3.
- User Registration using Firebase Authentication (using Email/Password | Google Authentication )
- CRUD Operations like
- User can add product to his cart.
- Admin can add product to the product list
- Admin can edit/delete the product.
- Drag and Drop
Angular Drag & Drop
- Implemented Angular Drag and Drop CDK
- Security
- Implmented Authentication and Authorization
- Technology: HTML, MDBootstrap, CSS, Angular-9, Firebase, i18n, Drag & Drop, Progressive Web Application, jsPDF (to download Receipt as PDF).
- Database : Angular Firebase (Realtime Database).
- Multiple Modules
- Components, Template and DataBinding
- Form Validation
- HttpClient
- Animations
- Dependency Injection
- Routing & Navigation
- Service Workers
- Pipes
- Gaurds etc..
-
Angular CLI
-
NodeJs
-
Package Manager - NPM / Yarn
-
Clone the repository and run
npm install
if you use npm as package manager oryarn install
if you use yarn as package manager. -
Angular + Firebase Tutorial - Angular + Firebase + Typescript — Step by step tutorial
-
Activate Firebase Authentication Providers
Authentication -> Sign-in-method -> Enable Email/Password & Google provider
-
Update the Firebase (Realtime Database) Rules
Database -> Rules
{ "rules": { ".read":true, ".write": true } }
-
Configure your firebase configuration
src/environments/firebaseConfig.ts
export const FireBaseConfig = { apiKey: "YOUR_API_KEY", authDomain: "YOUR_AUTH_DOMAIN", databaseURL: "YOUR_DATABASE_URL", projectId: "YOUR_PROJECT_ID", storageBucket: "YOUR_STORAGE_BUCKET", messagingSenderId: "YOUR_SENDER_ID" };
-
For Admin Role
Register or SignIn with Google Auth
your registered data will be saved inside the firebase clients table.
-clients -LRSkWxGAKQAFZmyfsx6 -createdOn: "1542046725" -email: "<<YOUR_REGISTERED_EMAIL_ID>>" -isAdmin: false <--- Change this to true ...
Now you can able to access the Admin Privileges like
Creating Product, Removing Product, etc..
-
Run the Server.
npm run github-deploy
convert -delay 100 -loop 0 *.png animation.mpeg
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The app will automatically reload if you change any of the source files.
Run ng generate component component-name
to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module
.
Run ng build
to build the project. The build artifacts will be stored in the dist/
directory. Use the -prod
flag for a production build.
Run ng test
to execute the unit tests via Karma.
Run ng e2e
to execute the end-to-end tests via Protractor.
To get more help on the Angular CLI use ng help
or go check out the Angular CLI README.
- If you find that something's wrong with this package, you can let me know by raising an issue on the GitHub issue tracker
This project is licensed under the MIT License - see the MIT license file for details