{"id":31103712,"url":"https://github.com/slamdev/baby-routine-tracker","last_synced_at":"2025-10-25T02:37:51.981Z","repository":{"id":310856577,"uuid":"1041514753","full_name":"slamdev/baby-routine-tracker","owner":"slamdev","description":"A collaborative Android app for parents to track their newborn's sleeps, feedings, and poops with a shared Firebase database and Google Gemini API-powered routine assistance.","archived":false,"fork":false,"pushed_at":"2025-08-27T21:43:57.000Z","size":729,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-27T23:53:34.080Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/slamdev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-20T15:43:41.000Z","updated_at":"2025-08-27T21:44:00.000Z","dependencies_parsed_at":"2025-08-20T17:48:42.680Z","dependency_job_id":"e57ac53e-516b-447d-8a2f-29903a882ae6","html_url":"https://github.com/slamdev/baby-routine-tracker","commit_stats":null,"previous_names":["slamdev/baby-routine-tracker"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/slamdev/baby-routine-tracker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slamdev%2Fbaby-routine-tracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slamdev%2Fbaby-routine-tracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slamdev%2Fbaby-routine-tracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slamdev%2Fbaby-routine-tracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slamdev","download_url":"https://codeload.github.com/slamdev/baby-routine-tracker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slamdev%2Fbaby-routine-tracker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275526414,"owners_count":25480460,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-17T02:00:09.119Z","response_time":84,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-09-17T02:50:45.952Z","updated_at":"2025-09-17T02:50:49.922Z","avatar_url":"https://github.com/slamdev.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Baby Routine Tracker\n\nA collaborative Android application designed to help new parents track their baby's daily activities including sleep, feedings, and diaper changes. Built with Kotlin and Jetpack Compose, featuring Firebase for real-time synchronization between devices and AI-powered suggestions via the Google Gemini API.\n\n## ✨ Features\n\n- **📊 Real-time Activity Tracking**: Track sleep, feeding, and diaper changes with timers and quick logging\n- **🔄 Multi-Device Sync**: Real-time data synchronization across parent devices using Firebase\n- **👥 Partner Collaboration**: Invite partner with unique codes to share baby profiles\n- **🤖 AI-Powered Sleep Suggestions**: Get intelligent sleep routine recommendations via Gemini API\n- **🎨 Modern UI**: Material Design 3 with automatic light/dark mode support\n- **📱 Responsive Design**: Optimized for portrait, landscape, and split-screen modes\n- **📈 Data Visualization**: Historical charts and trends analysis\n- **🚀 Automated CI/CD**: Continuous deployment to Google Play Console internal testing\n\n## 🛠️ Technology Stack\n\n- **Language**: Kotlin\n- **UI Framework**: Jetpack Compose\n- **Architecture**: MVVM (Model-View-ViewModel)\n- **Backend**: Firebase (Firestore, Authentication, Functions, Messaging)\n- **AI Integration**: Google Gemini API\n- **Charts**: Vico for Android\n- **Build System**: Gradle with Kotlin DSL\n- **CI/CD**: GitHub Actions with Google Play Console integration\n\n## 🚀 CI/CD Pipeline\n\nThis project features a fully automated CI/CD pipeline that:\n\n- ✅ **Automatically builds and tests** on every push/PR\n- ✅ **Deploys to Google Play Console** internal testing on main branch commits  \n- ✅ **Auto-increments version codes** using commit count\n- ✅ **Creates GitHub releases** with build information\n- ✅ **Validates app signing** and Firebase configuration\n\n### Quick CI/CD Setup\n1. **Configure GitHub Secrets** - See [GitHub Secrets Reference](./GITHUB_SECRETS_REFERENCE.md)\n2. **Set up Google Play Console** - Follow [CI Pipeline Setup Guide](./CI_PIPELINE_SETUP.md)\n3. **Push to main branch** - Automatic deployment will start! 🎉\n\n### CI/CD Files\n- 🔧 [`.github/workflows/android-release.yml`](./.github/workflows/android-release.yml) - Main workflow\n- 📋 [`CI_PIPELINE_SETUP.md`](./CI_PIPELINE_SETUP.md) - Detailed setup guide  \n- 🔑 [`GITHUB_SECRETS_REFERENCE.md`](./GITHUB_SECRETS_REFERENCE.md) - Secrets quick reference\n- ✅ [`scripts/validate-ci-setup.sh`](./scripts/validate-ci-setup.sh) - Validation script\n\n## 💻 Development Setup\n\n### Prerequisites\n- Android Studio (latest version)\n- JDK 17+\n- Firebase project configured\n- Google Cloud project with Gemini API access\n\n### Local Development\n1. Clone the repository\n2. Open in Android Studio\n3. Add your Firebase configuration (`google-services.json`)\n4. Create signing keystore for release builds\n5. Build and run on device/emulator\n\n### Build Commands\n```bash\n# Debug build\n./gradlew assembleDebug\n\n# Release build  \n./gradlew bundleRelease\n\n# Run tests\n./gradlew testDebugUnitTest\n\n# Validate CI setup\n./scripts/validate-ci-setup.sh\n```\n\n## 🏗️ Architecture\n\nThe app follows modern Android development patterns:\n\n- **MVVM Architecture** with Jetpack Compose\n- **Repository Pattern** for data layer abstraction  \n- **Real-time Data Flow** using Firebase Firestore listeners\n- **Coroutines** for asynchronous operations\n- **Material Design 3** theming system\n\n## 🔑 Key Components\n\n- **Activity Tracking**: Sleep, feeding, and diaper change logging with timers\n- **Partner Invitation System**: Secure sharing of baby profiles\n- **Real-time Synchronization**: Cross-device data consistency  \n- **AI Sleep Recommendations**: Gemini API integration for routine suggestions\n- **Data Visualization**: Charts for sleep patterns and feeding trends\n- **Multi-language Support**: English and Russian localization\n\n## 📱 Supported Features\n\n### Activity Types\n- 😴 **Sleep Tracking**: Start/stop timers with duration calculations\n- 🤱 **Breast Feeding**: Timer-based tracking with duration logging\n- 🍼 **Bottle Feeding**: Quick amount logging with notes\n- 💩 **Diaper Changes**: Instant logging with optional notes\n\n### User Experience\n- **4-Card Dashboard**: Responsive grid layout for all activities\n- **Swipe Navigation**: Horizontal navigation between screens\n- **Activity History**: Complete log with editing and deletion\n- **Profile Management**: Baby profiles with age calculations\n- **Account Management**: Full data deletion and privacy controls\n\n## 🤝 Contributing\n\nThis is a personal project, but contributions are welcome:\n\n1. Fork the repository\n2. Create feature branch\n3. Follow existing code patterns and documentation\n4. Write tests for new functionality\n5. Submit pull request\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🔐 Privacy \u0026 Security\n\n- All data is stored securely in Firebase with proper access controls\n- No personal data is shared with third parties\n- AI features use anonymized data only\n- Users have full control over their data deletion\n- End-to-end encryption for sensitive information\n\n## 📞 Support\n\nFor issues and feature requests, please use the GitHub issue tracker.\n\n---\n\n**🎯 Ready to deploy?** Follow the [CI Pipeline Setup Guide](./CI_PIPELINE_SETUP.md) to get automatic deployments to Google Play Console!\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslamdev%2Fbaby-routine-tracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fslamdev%2Fbaby-routine-tracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslamdev%2Fbaby-routine-tracker/lists"}