Mood Tracker
Develop a mood tracker application utilizing Flutter. Implement Firebase Authentication and Firestore for backend services, leverage Riverpod for state management, utilize GoRouter for navigation, and adopt the MVVM architectural pattern.
-
"The SignUp and SignIn widgets must incorporate a Form with two TextFormField widgets for email and password input."
-
"Upon user registration, a new account should be instantiated within Firebase, and the user should be authenticated using Firebase Authentication."
-
"Upon user authentication through SignIn, they should be navigated to the HomeScreen via Firebase Authentication."
- "The
HomeScreen
should incorporate aBottomNavigationBar
with twoBottomNavigationBarItem
s: 'Home' and 'Post'." - "Navigating to the 'Post' tab should route the user to the
PostScreen
." - "Navigating to the 'Home' tab should route the user back to the
HomeScreen
." - "Mood entries should be retrieved from Firestore."
- "A mood entry should consist of a date, a mood (emoji), and a description."
- "On long pressing a mood entry, an
AlertDialog
should be displayed, prompting the user for deletion." - "Upon confirming 'Delete', the mood entry should be removed from Firestore."
-
"The
PostScreen
should contain aForm
widget with aTextField
for entering the mood entry description." -
"Below the input, a row of emoji buttons should be displayed."
-
"Upon pressing the 'Post' button, a mood entry should be instantiated in Firestore, and the user should be routed to the
HomeScreen
where the new entry is visible."