SleepyKid is a mobile application designed to help parents keep track of their children's sleep patterns. The app follows the MVVM (Model-View-ViewModel) architecture and is built using CoreData and SnapKit.
- SplashScreen: The app's loading screen.
- KidsListScreen: Displays a list of kids with an option to add a new kid. Long tapping on a kid's name opens a menu with edit and delete options.
- AddKidScreen: Allows the user to add a new kid by entering their name and age.
- EditKidScreen: Enables the user to edit an existing kid's record, including name and age.
- SleepListScreen: Shows logged sleep records with options to add new sleep entries by days.
- AddSleepScreen: Facilitates adding a new sleep entry.
- EditSleepScreen: Provides functionality to edit an existing sleep entry.
- WelcomeScreen: Offers a choice between login and registration.
- SignUpScreen: Allows new user registration, including email, password, first name and last name.
- LoginScreen: Enables existing users to log in using their email and password.
- StatisticsScreen: Provides statistical data on sleep patterns and trends.
- Validation and Notifications: Add validation to avoid saving invalid sleep periods and notify users accordingly.
- Sleep Interval Field: Display the interval between sleep entries.
- Localization: Add support for multiple languages.
- Import/Export Functionality: Enable users to import data into the app and export it for backup or sharing.
- Validation and Notifications: Add validation to avoid saving invalid sleep periods and notify users accordingly.
- Tooltips: Implement tooltips to provide additional information about features and functionalities in the app.
This project is currently under development. We appreciate any feedback and contributions from the community to make SleepyKid a better tool for parents. Feel free to open issues or pull requests on our GitHub repository.