Deployed App URL: https://budimir-sample.firebaseapp.com
Last.fm navigator sample.
It is but a simple artist navigator, build with React/Redux.
Backend uses Firebase for auth and its RealtimeDB for saving user-specific data.
It's been bootstrapped using create-react-app.
Optionally, local server (NodeJS) & DB (MongoDB) might be added later.
Commands:
yarnornpm installto install dependenciesyarn startornpm run startto start project locallyyarn testornpm run testto run Jest unit testsyarn test:coverageornpm run test:coverageto check for test coverage on projectyarn storybookornpm run storybookto run Storybook dev environmentyarn pre-commitornpm run pre-committo run pre-commit hookyarn buildornpm run buildto build production versionyarn deployornpm run deployto deploy project fully on Firebase hostingyarn deploy:hostornpm run deploy:hostto deploy build folder to Firebase hosting
- Project can be modified to use external module, such as
react-redux-firebaseif codebase will grow.
- Fix favorite action
- Organize
findArtist(),fetchArtist()andsetArtist()functions better - Drop classes for functional components & recompose/hooks
- Integrate styled-components v5
- Reorganize folder structure
- Add
redux-sagaand finish missing logic - Add memoization when applicable (selectors, effects)
- Add proper typechecking/test/storybook coverage [in progress]
- Deploy to custom host and integrate CI/CD optional