https://github.com/vadimgierko/todo-app
Manage your tasks & todo lists using this Installable Todo App built using React, Redux, React Router, MUI, Firebase & deployed with GitHub Pages
https://github.com/vadimgierko/todo-app
authentication firebase github-pages mui pwa react react-context-api react-router reactjs redux redux-toolkit spa todo-app
Last synced: 2 days ago
JSON representation
Manage your tasks & todo lists using this Installable Todo App built using React, Redux, React Router, MUI, Firebase & deployed with GitHub Pages
- Host: GitHub
- URL: https://github.com/vadimgierko/todo-app
- Owner: vadimgierko
- Created: 2022-07-22T21:25:48.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-03-08T22:25:08.000Z (over 2 years ago)
- Last Synced: 2024-03-08T23:54:41.371Z (over 2 years ago)
- Topics: authentication, firebase, github-pages, mui, pwa, react, react-context-api, react-router, reactjs, redux, redux-toolkit, spa, todo-app
- Language: JavaScript
- Homepage: https://vadimgierko.github.io/todo-app/
- Size: 6.23 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Todo App
## About the app
This installable web app (SPA/PWA) enables you to create todo lists containing tasks & add, delete, update & check those tasks.
The app was built using React, Redux Context API, React Router, MUI, Firebase & deployed with GitHub Pages.
You can use the app in the browser or download it to your device. To use app in the browser, navigate to https://vadimgierko.github.io/todo-app/.
## How to download the app
You can download the app from the browser. If you're using Google Chrome, navigate to https://vadimgierko.github.io/todo-app/. New โinstallโ icon will appear on the url right-hand side. The install icon looks like an โinstall iconโ symbol inside a computer screen icon, usually to the left of the share this page icon. Install may be accessed by tapping or clicking the install icon.
## Features
- User Authentication (user can create a free account and log in to use the app)
- Adding, updating & deleting (CRUD) todo lists (*with auto displayed amount of lists in parentheses*)
- Adding, updating & deleting (CRUD) tasks (todos) in particular lists (*with auto displayed amount of nested tasks in parentheses*)
- Dark/ light Mode switch
- PWA (the app can be downloaded from the browser & installed on any device)
## Tech Stack
- React 18.2
- React Context API
- Firebase 9.8
- Realtime Database
- Authentication
- React Router 6.3
- MUI 5.8
- GitHub Pages 4.0
## How to use the app with partially implemented GTD system
You can partially implement David Allen's GTD (*Getting Things Done*) System using basic features of this app:
1. Create a few predefined lists:
- ๐ PROJECTS (in progress nested tasks; define next actionโ)
- ๐คทโโ๏ธ SOMEDAY/MAYBE (potential future projects or one-off tasks)
- ๐ NEXT ACTIONS (copy 1 from each project + closest one-off tasks)
2. When your adding a task:
- if it must be done due some date ๐ add it to your calendar
- if it must be done & takes 2 minutes to do ๐ do it now!
- if it must be done, takes more than 2 minutes & is a one-off task ๐ add it to NEXT ACTIONS list
- if it must be done, takes more than 2 minutes & is a project (a set of tasks) ๐
- add the new project name (*de facto* new todo) to PROJECTS list
- define the closest physical next action & add it to NEXT ACTIONS list
- if it mustn't be done now/ASAP, but you may be interested to do it in the future ๐ add it to SOMEDAY/MAYBE list
Additionally, you can create separate lists for particular projects you're currently working on & put all project-related tasks there. But remember โ ๏ธ to always define the closest next physical action & to duplicate it into NEXT ACTIONS list (you can also mark this tasks as next action in parentheses inside a project).
## ๐ TODO:
* all user's data must be deleted before user would be deleted
* consider forcing user to resign in to prevent not deleting user after deleting all data, because of not recent log