Pandivia is a shopping list PWA made with Angular and Firebase.
Users have
- a List page where they can add items to buy, grouped by category
- an Inventory page where they can add frequently bought items for easy retrieval
- a Profile page to be able to change theme and language
TODO: Add screenshots
Requirements
- Node.js 16+
- Java 17+
npm install
npm run firebase:dev
- In another terminal
npm run start
Angular 16+, workspaces, Angular Signals, custom components, accessibility, focus management via keyboard, themes, i18n, service workers, NgRx, Firestore, Firestore rules, Firebase Auth, Firebase Emulators, authentication, authorization, invite-based sign up.
- https://www.w3.org/WAI/ARIA/apg/patterns/
- https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow
- https://www.atlassian.com/git/tutorials/git-log
- https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow
- https://dev.to/ngrx/announcing-ngrx-v16-integration-with-angular-signals-functional-effects-standalone-schematics-and-more-5gk6
- https://www.npmjs.com/package/@angular/localize
- https://whiteduck.de/how-to-approach-angular-internationalization-i18n-in-2022/
- https://www.npmjs.com/package/@angular/fire
- https://www.npmjs.com/package/@angular/pwa
- https://colorgen.dev/
- https://medium.com/city-pantry/handling-errors-in-ngrx-effects-a95d918490d9