This is a submission to this Challenge
The web app fetches and displays a list of locations and characters from the public Rick and Morty's API. It covers 6 challenges which match the 6 merge pull requests from 6 different branches. You can visit the challenge link given above to see more details about each challenge.
The unit tests after Challenge #4 have been commented because they fail to mock the Dexiejs library. A proper Jest implementation for Dexie could not be found.
You are welcome to fork the project , add an implementation and give a pull request.
Some helpful links -
- dexie/Dexie.js#493
- https://dev.to/johnson_cor/how-to-write-tests-for-a-library-that-requires-being-run-on-the-browser-like-dexie-js-or-localforage-48k7
Alternatives
- Unit testing of Vue with Cypress
- Replace Dexie with plain vanilla IndexedDb and write unit tests directly for indexedDb.
- Vuejs as main framework
- BootstrapVue for styling
- Dexiejs for storing in IndexedDb
- Axios for calling APIs
- Jest for unit tests
- Cypress for end-to-end tests
- EsLint for lint tests
It has been deployed to Vercel using CI here
Clone the project and run following commands
npm install
npm run serve
npm run build
npm audit
npm run lint
npm run test:e2e
npm run test:unit
See Configuration Reference. ).