The idea is to have a small example of a car registration portal.
- Authorization (only a logged-in user can access Dashboard page)
- Dashboard page (with filters and lazy loaded cards)
- Add car page
- Dynamic price calculation for a car.
- created basic layouts for Home page, Dashboard page, Cards list, Car card
- added routes for the root and the dashboard
- dashboard page is made as a lazy-loading module
- created a service with cars mock data which returns a cars list
- added login/logout functionality by Auth0 (Dashboard ia available for signed-in users only)
- Add communication with a server (use some free API) as to get real data
- Tweak lazy loading cards by scroll loading (using
ngx-infinite-scroll
library) - Take care about responsive design, align/tweak the app view for tablets/mobiles
- Add a possibility to view/toggle the cars in a list view (OPTIONAL)
- Add car property (brand/model/color etc.) filters as to see a specific cars in the list
- Create "Add car" page/form
- Create User profile page
- Get rid of secret keys (API keys) in the code (move them to a config file stored secretly)
- Increase unit-tests coverage
- Think about SSR/SSG in order to improve the app performance (OPTIONAL)
This project was generated with Angular CLI version 13.1.2.
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 build
to build the project. The build artifacts will be stored in the dist/
directory.
Run ng test
to execute the unit tests via Karma.