-
User Account
- User authentication with username and password
- Personalization - ex: profile photo, personal info, etc.
- Add Friends
-
Live Feed
- Users are able to create an interactive to-do list that is displayed on a live feed for friends
- Give users the ability to post a completed task with a picture of that task on their live feed
- Allow users to comment on posts on their feed
-
Task Tracker
- Ability to set tasks
- Push-Notifications for whenever a task from the user’s to-do list is due soon
- Track how many to-do tasks were completed by the user each day
- Add categories for tasks (like education, work, home, etc)
- Allow users to notify their friends when a task is completed
-
Collaborative To-Do List
- Allow for collaborative to-do lists that allows multiple users to work on one to-do list
- Add group project feature
- Add chat feature for user’s friends
- Add motivating social/productivity challenges that users can join in on
- Create a stats/streaks system that tracks how consistent you are with completing tasks and display data on profile page
- Add achievements and rewards as you progress through tasks
Week | Deliverables/Tasks |
---|---|
1 | Meet team, set up development environment, explore ideas using similar apps |
2 & 3 | Front end: plan pages, create wireframes & code initial screens, get familiar with Flutter widgets, and start designing the UI for the user profile and to-do list. Back end: Firebase, create the Firebase project, and set up Firebase Authentication. Set up Firestore for user data. Implement user authentication and creation of user profiles in Firebase. Allow users to add friends. (Week 3) |
4 | Front end: 50% of app screens, Back-end: Implement the interactive to-do list in Firestore, including the ability for users to create, update, and delete tasks. Integrate with Front End |
5 | Front end: complete 75% of screens, Back end: Implement the live feed feature in Firestore. Enable users to post completed tasks with pictures and allow users to comment on these posts,Implement push notifications using Firebase Cloud Messaging (FCM). Notifications should be sent when a task is due soon. Continue to integrate with frontend as needed |
6 & 7 | Front end: 100% of app screens, enhancing features/animations, Back end: Implement collaborative to-do lists in Firestore. Implement task categories in Firestore. Tasks should be categorizable |
8 & 9 | Implement functionality for tracking how many to-do tasks were completed by the user each day, finish integration of Front End and Back End |
10 | Practice presentation, final touches |
11 | Presentation Night!! |
Wireframing: Figma
Front-end: Flutter
Back-end: Dart & Firebase
Installation & Set Up:
Flutter Installation for Mac OS
Installation guide pt 2 for Mac OS
Flutter Installation for Windows
Flutter Installation for Windows pt 2
Firebase w/ Flutter Set Up
Install Android Studios
VS Code
Git
Xcode (for Mac users and the ios emulator and packages
Tutorials:
Flutter Tutorial
Figma Tutorial
Dart Tutorial
Git Tutorial
Git Cheat Sheet
How to implement push notifications with Flutter and Firebase Cloud Messaging
Working with Firebase CRUD and REST API's
Quick Read :) How to be Successful in Projects
Command | Description |
---|---|
cd "Task-Mate" | Change directories over to our repository |
git branch | Lists branches for you |
git branch "branch name" | Makes new branch |
git checkout "branch name" | Switch to branch |
git checkout -b "branch name" | Same as 2 previous commands together |
git add . | Finds all changed files |
git commit -m "Testing123" | Commit with message |
git push origin "branch" | Push to branch |
git pull origin "branch" | Pull updates from a specific branch |
get commit hash (find on github or in terminal run git log --oneline ) then git revert 2f5451f --no-edit | Undo a commit that has been pushed |
git reset --soft HEAD~ | Undo commit (not pushed) but keep the changes |
get commit hash then git reset --hard 2f5451f | Undo commit (not pushed) and remove changes |
Shrimoy Satpathy
Jasper Yin
Zubiya Syeda
Ubaid Mohammed
Ridwan Amin - Project Manager
Saman Attar - Industry Mentor