Minimal Todo
Minimal Todo is a simple todo app with a minimal set of features
- Written in Typescript
- apollo client is used as GraphQL client
- apollo-server is used as GraphQL server
- level is used for data persistence on the backend
- react-hooks-global-state for global state management
- react-navigation for navigation
- react-i18next for internationalization i18n
Features
- Create todo with title and due date
- Complete a todo
- Update todo's title and due date
- Delete todo
Screenshots
Empty todo list | Create todo | View todo list | Update todo |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
How to run the app locally
- start the local backend server
npm run start:backend-local
- run the app on the simulator/emulator
- to run the app on iOS, run
npx pod-install
then runnpm run ios
- to run the app on Android, run
npm run android
- to run the app on iOS, run
Unit tests
these components/custom hooks that have unit test coverage
Components
- TodoDueDate.tsx : TodoDueDate.test.tsx
- NewTodoButton.tsx : NewTodoButton.test.tsx
- NewTodoFloatingButton.tsx : NewTodoFloatingButton.test.tsx