Using any tools provided let's build a TODO web application. The app only needs to do a couple of things. Primarily it is going to interact with the local sqlite3 database. You can find an example of what the basic app should be able to accomplish in the static/example directory.
Most of what needs to be changed in the project is labeled with a TODO. You shouldn't have to spend too much time (if any) setting up configs. All of your work should be done in the UI and Apollo.
You also will create a new About page that will have two or three sentences explaining how you approached the project. (This can be very basic and doesn't require styling, we just want to see a new route created in Next.js and read briefly about the project).
Make sure to finish the acceptance criteria first before moving on to any bonus points.
Reference the React, Apollo, and Next.js Docs for help.
- The user should be able to create a new todo item by entering a description and pressing a "+" button.
- The user should be able to mark a todo item as complete by clicking a checkbox next to the item.
- The user should be able to delete a todo item by clicking a "Delete" button next to the item.
- The user should be able to see a count of the total number of todo items and the number of incomplete items.
- The user will have a link that says "About" that will take them to a new route.
- The user should be able to filter the list of todo items by typing in a search box and seeing only the items that match the search criteria.
- The user should be able to edit the todo item inline by clicking on the description and editing it in place.
- Clone the repo
- Install Node packages
yarn set version berry yarn - Create an
.envfrom the.env.example. - Run database migration:
- Run migration
npx sequelize-cli db:migrate
- Start application in development
yarn dev