Skip to content

saulin18/Angular-Technical-Test-frontend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Angular Technical Test

A modern Angular application for managing product approvals with a clean architecture and state management using NgRx.

Features

  • View and manage products pending review
  • Approve or reject products
  • View reviewed products with infinite scroll
  • Product details view in a modal dialog
  • Local storage persistence
  • Responsive design with Angular Material
  • State management with NgRx

Prerequisites

  • Node.js (v18 or later)
  • npm (v9 or later)
  • Angular CLI (v19)

Installation

  1. Clone the repository:
git clone [repository-url]
  1. Install dependencies:
npm install
  1. Start the development server:
ng serve
  1. Open your browser and navigate to http://localhost:4200

Project Structure

src/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ core/
β”‚   β”‚   β”œβ”€β”€ models/
β”‚   β”‚   β”œβ”€β”€ services/
β”‚   β”‚   β”œβ”€β”€ adapters/
β”‚   β”‚   └── store/
β”‚   β”œβ”€β”€ features/
β”‚   β”‚   β”œβ”€β”€ product-list/
β”‚   β”‚   β”œβ”€β”€ reviewed-products/
β”‚   β”‚   └── product-details/

Technologies Used

  • Angular 19
  • Angular Material
  • NgRx for state management
  • RxJS
  • TypeScript
  • SCSS

Development

  • Run ng serve for a dev server
  • Run ng build to build the project
  • Run ng test to execute unit tests
  • Run ng e2e to execute end-to-end tests

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.