/Angular-ShoppingCart

ShoppingCart (Ecommerce) Application using Angular6, Firebase, PWA and Materialized Bootstrap.

Primary LanguageTypeScriptMIT LicenseMIT

Angular6 - ShoppingCart + MDBootstrap + Firebase + i18n

HitCount License: MIT npm Build Status

Developing a ShoppingCart (Ecommerce) Application using Angular6.

Live Demo : Angular-shopping-cart

This project was generated with Angular CLI version 6.0.7.

Functionalities

  1. User Registration using Firebase Authentication (using Email/Password | Google Authentication )
  2. CRUD Operations like
  • User can add product to his cart.
  • Admin can add product to the product list
  • Admin can edit/delete the product.
  1. Security
  • Implmented Authentication and Authorization

Tools and Technologies

  • Technology: HTML, MDBootstrap, CSS, Angular-6, Firebase, i18n, Charts, Progressive Web Application, jsPDF (to download Receipt as PDF).
  • Database : Angular Firebase.

This Projects covers all fundamentals of Angular

  • Multiple Modules
  • Components, Template and DataBinding
  • Form Validation
  • HttpClient
  • Animations
  • Dependency Injection
  • Routing & Navigation
  • Service Workers
  • Pipes
  • Gaurds etc..

Installation

  1. Angular CLI

  2. NodeJs

  3. Package Manager - NPM / Yarn

  4. Clone the repository and run npm install if you use npm as package manager or yarn install if you use yarn as package manager.

  5. Angular + Firebase Tutorial - Angular + Firebase + Typescript — Step by step tutorial

  6. Activate Firebase Authentication Providers

    Authentication -> Sign-in-method -> Enable Email/Password & Google provider

  7. Update the Firebase Database Rules

    Database -> Rules

    {
    "rules": {
        ".read":true,
        ".write": true
    }
    }
    
  8. 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"
    };
    
  9. Run the Server.

Screenshots:

Home Page:

Alt text

Products Page:

Alt text

Development server

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.

Code scaffolding

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.

Build

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.

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Run ng e2e to execute the end-to-end tests via Protractor.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.

Contribution:

  • Contibutors are most welcome.

Somethings wrong!!

  • If you find that something's wrong with this package, you can let me know by raising an issue on the GitHub issue tracker

License