An open API service indexing awesome lists of open source software.

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

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