Example application utilizing @ngrx libraries, showcasing common patterns and best practices. Take a look at the live app.
This app is a book collection manager. The user can authenticate, use the Google Books API to search for books and add them to their collection. This application utilizes @ngrx/db to persist the collection across sessions; @ngrx/store to manage the state of the app and to cache requests made to the Google Books API; @angular/router to manage navigation between routes; @ngrx/effects to isolate side effects.
Built with @angular/cli
- @ngrx/store - RxJS powered state management for Angular apps, inspired by Redux
- @ngrx/effects - Side effect model for @ngrx/store
- @ngrx/router-store - Bindings to connect the Angular Router to @ngrx/store
- @ngrx/entity - Entity State adapter for managing record collections.
- @ngrx/store-devtools - Instrumentation for @ngrx/store enabling time-travel debugging
- @ngrx/db - RxJS powered IndexedDB for Angular apps
- @angular/router - Angular Router
- jest - JavaScript test runner with easy setup, isolated browser testing and snapshot testing
# Clone the repository
git clone https://github.com/ngrx/platform.git
# Go to the example directory
cd platform
# Install the dependencies
yarn
# Start the server
yarn run build && yarn run cli serve
# Or try
yarn run example:start
Navigate to http://localhost:4200/ in your browser. To login, the username and password is test
.
NOTE: The above setup instructions assume you have added local npm bin folders to your path. If this is not the case you will need to install the Angular CLI globally.