Skip to content


Repository files navigation


Live app:

Getting Started


Have installed nvm and yarn

Set up local enviroment

  • Run nvm use to use the node version* which this project uses (defined in .nvmrc).
  • Run yarn to install all the necesary dependencies.

* Based on the node version that you have already installed you may skip this step

Available Scripts

yarn start

Runs the app in the development mode. Open http://localhost:3000 to view it in the browser.

yarn test

Launches the test runner in the interactive watch mode.

yarn build

Builds the app for production to the build folder.


Some notes from myself regarding a few things


This app has been created with create react app, for a quicker start. Personally this days I prefer to use or either Gatsby or Next.


I just created a few tests, a lot of things hasn't been tested for this. The libraries I have used are:

  • @testing-libary/react: for react components tests
  • @testing-libary/user-event: to test user events/interactions
  • jest-styled-components: for styled components tests
  • jest-localstorage-mock: to mock local storage

Also for static testing, I have automated w/ husky the running of ESLint and Prettier on every pre-commit.

If given the time, I would had implemented E2E test with Cypress

Styling / UI

  • I have used Styled-Components for the project.
  • No CSS Framework or Design Library is used
  • Icons: Github Octicons

State management

Client State: Given the size of this project I have choosed to use the Context API of React, if the scope of the project were bigger I problaby have used Redux (w/ Redux Toolkit).

Persistence Layer: Local storage is being used to persist the data.


This one is a big topic, with no right or wrong approaches. In this case I used a /folder/index structure in this project because it's the one I'm used to do, but personally I'm not completly sold on it.


No description, website, or topics provided.






No releases published


No packages published