A beautifully designed intermittent fasting tracker for Android and Wear OS that helps you monitor your fasting windows and achieve your health goals.
- Multiple Fasting Plans: Support for 13h, 16:8, 18:6, 20:4, and 36h fasting windows
- Real-time Tracking: Live progress tracking with visual countdown
- Weekly Progress: Track your fasting consistency over time
- Home Screen Widgets: Quick access to fasting status and controls
- Smart Notifications: Reminders when your fasting goal is achieved
- Material You Design: Dynamic theming that adapts to your device
- Offline First: All data stored locally for privacy
- Full Standalone App: Start, stop, and track fasts directly from your watch
- Watch Face Complications: See fasting status at a glance
- Tiles: Quick access from the watch tiles menu
- Ongoing Activities: Persistent notification during active fasts
- Perfect Sync: Seamless synchronization between phone and watch
Coming soon
- Android 12 (API 31) or higher
- Wear OS 3.0 or higher (for watch app)
- Clone the repository
git clone https://github.com/charliesbot/one.git
cd one-
Open the project in Android Studio
-
Build and run on your device or emulator
Advanced Setup (Optional)
To enable crash reporting and analytics:
- Create a Firebase project at Firebase Console
- Add two Android apps (one for phone, one for wear)
- Download
google-services.jsonfor each - Place them in
app/andwear/directories
For release builds, create keystore.properties in the root:
storeFile=/path/to/your/keystore.jks
storePassword=your_store_password
keyAlias=your_key_alias
keyPassword=your_key_passwordThen build:
./gradlew app:installRelease
./gradlew wear:installReleaseThe project follows clean architecture principles with three main modules:
/core: Common business logic, data models, and synchronization/app: Android phone/tablet application/wear: Wear OS application/features: Feature modules (dashboard,profile,settings)
- UI: Jetpack Compose & Wear Compose
- DI: Koin
- Async: Kotlin Coroutines & Flow
- Storage: DataStore & Room
- Sync: Wearable Data Layer API
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- See CLAUDE.md for detailed development guidelines
- See ARCHITECTURE.md for system design details
- Ensure phone-watch sync works before submitting PRs
- Test all UI components (widgets, complications, tiles)
- Follow existing code style and patterns
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Jetpack Compose and Material 3
- Icons from Material Icons Extended
- Fasting windows based on popular intermittent fasting protocols
Made with love by @charliesbot
Thanks to these awesome people for their contributions: