-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
76 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,27 +1,89 @@ | ||
# AngularStoreApp | ||
## Products Store Angular Web App | ||
|
||
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 15.0.3. | ||
Welcome to the Basic E-Commerce Store Angular Web App! This application provides a simple and user-friendly shopping experience. Below, I've included all the information you need to set up, run, and understand the features of this application. | ||
|
||
## Development server | ||
## Features | ||
|
||
Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The application will automatically reload if you change any of the source files. | ||
### 1. Login Display | ||
|
||
## Code scaffolding | ||
A basic login form is provided to facilitate user authentication. Two static login roles are available: | ||
|
||
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`. | ||
- **User Role** | ||
- Username: user | ||
- Password: user | ||
|
||
## Build | ||
- **Admin Role** | ||
- Username: admin | ||
- Password: admin | ||
|
||
Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. | ||
### 2. Categories/Product Display (For user view) | ||
|
||
## Running unit tests | ||
Access to the categories and product display page is restricted to logged-in users. The content is only accessible to users, this contains filter categories, search with product name, pagination, and changing page limit to show. | ||
|
||
Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). | ||
- Show different categories. | ||
- Under each category, display available products along with a filter section. | ||
- Loading animations are used while fetching data. | ||
- Each product card displays full product details. | ||
|
||
## Running end-to-end tests | ||
### 3. Admin View (for admin view) | ||
|
||
Run `ng e2e` to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities. | ||
- Display all products in a table format. | ||
- Pagination and changing page limit. | ||
- Admin can view product. | ||
- Admin can add new products. | ||
- Admin can update existing product details. | ||
- Admin can delete products. | ||
|
||
|
||
## Features | ||
|
||
- Developed using the latest Angular version (15). | ||
- Angular guards are implemented for security | ||
- Module-based architecture, large scalability. | ||
- lazy-loaded modules, enhanced app loading speed | ||
- Responsive design for mobile devices, Using Angular material UI. | ||
- Styles are defined using SASS. | ||
- Dynamic localization supports English and Arabic languages. | ||
- Animated loader is shown during every request. | ||
- Toaster feedback for errors | ||
- User data persistence during auth by local storage | ||
- Dynamic localization | ||
|
||
|
||
## Modules | ||
|
||
- App module (main module) | ||
- Auth module (for login elements) | ||
- Admin module (containing all admin view elements) | ||
- User module (containing all user view elements) | ||
- Shared module (all shared components and modules) | ||
- Material module (importing all angular material modules) | ||
|
||
|
||
|
||
## Getting Started | ||
|
||
To get started with the Basic E-Commerce Store Angular Web App, follow these steps: | ||
|
||
1. **Clone the Repository:** Clone this repository to your local machine. | ||
|
||
``` | ||
git clone [https://github.com/your-username/basic-ecommerce-angular.git](https://github.com/mBahrawy/angular-store-app.git) | ||
``` | ||
|
||
2. **cd to the project directory** | ||
``` | ||
cd angular-store-app | ||
``` | ||
|
||
3. **Install dependencies** | ||
``` | ||
npm i | ||
``` | ||
|
||
4. **run the app** | ||
``` | ||
npm start | ||
``` | ||
|
||
## Further help | ||
|
||
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page. |