Skip to content

Commit

Permalink
documentation : create readme file
Browse files Browse the repository at this point in the history
  • Loading branch information
mBahrawy authored Aug 17, 2023
1 parent 3e92566 commit b53e162
Showing 1 changed file with 76 additions and 14 deletions.
90 changes: 76 additions & 14 deletions README.md
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.

0 comments on commit b53e162

Please sign in to comment.