Keep your GitHub contribution momentum visible — right from your home screen.
A sleek, Android-native widget for developers who want to track daily GitHub contribution streaks —
built with a premium charcoal & green interface to keep you motivated and consistent.
GitStreakWidget is purpose-built for developers who care about consistency. Every feature is designed to be lightweight, fast, and unobtrusive.
| Feature | Description |
|---|---|
| Real-time Tracking | Fetches your current and historical contribution streak using accurate GraphQL analysis |
| Native Widget | A 3×2 home screen widget that refreshes automatically in the background, complete with a manual refresh button |
| Premium UI | A sleek, modern dashboard featuring abstract contribution grids, built with Material 3 and Jetpack Compose |
| Frictionless Setup | Enter your GitHub username (Personal Access Token is optional for private repos) |
| Optimized Battery | Engineered for minimal battery drain using WorkManager, which cleans up completely upon widget removal |
| Secure Storage | Uses EncryptedSharedPreferences to safely store and automatically wipe credentials |
GitStreakWidget is distributed as a standalone APK during its independent release phase. Follow the steps below to install it on any Android device.
Note: Since the app is self-signed and distributed outside the Play Store, you may encounter security prompts during installation. These are expected and safe to proceed through.
Step 1 — Download
Navigate to the Releases page and download the latest GitStreak-v1.0.apk.
Step 2 — Allow Unknown Sources
On your Android device, open the downloaded file. If prompted, grant permission to Install from Unknown Sources via your browser or file manager settings.
Step 3 — Install
Tap Install. If Google Play Protect displays a warning, select Install Anyway — this warning appears because the app is self-signed, not because it is harmful.
Step 4 — Launch
Once installed, open GitStreak from your app drawer and follow the setup steps below.
Getting started takes under a minute. The app guides you through three simple steps.
Open the app and enter your GitHub username. A Personal Access Token (PAT) is optional but recommended if you want to track private commits.
GitHub Username → [ yourusername ] → [ Launch Tracker ]
After verification, your current streak and contribution summary are displayed on the main dashboard, featuring a beautiful glowing UI.
Place the widget on your home screen using the standard Android process:
Long-press Home Screen → Select "Widgets" → Find "GitStreak" → Drag to Screen
| Layer | Technology |
|---|---|
| Language | Kotlin |
| Main App UI | Jetpack Compose + Material 3 |
| Widget Layer | RemoteViews (XML AppWidgets) |
| Networking | OkHttp + JSON parsing |
| Background Sync | WorkManager |
| Concurrency | Kotlin Coroutines |
| Storage | EncryptedSharedPreferences |
GitStreakWidget blends Compose for the modern app experience with highly optimized classic Android components for reliable background processing.
app/
├── main/
│ ├── java/com/danycli/gitstreakwidget/
│ │ ├── MainActivity.kt # Jetpack Compose UI (Guide & Login)
│ │ ├── GitWidget.kt # AppWidgetProvider & RemoteViews logic
│ │ ├── GitStreakWorker.kt # Background WorkManager syncing
│ │ └── StreakRepository.kt # API orchestration
│ └── res/
│ ├── layout/git_widget.xml # Widget layout
│ └── drawable/ # Custom modern UI shapes and icons
Asynchronous networking is handled entirely with Kotlin Coroutines, keeping the main thread free and the UI responsive. The widget ensures battery efficiency by gracefully tearing down WorkManager jobs and wiping secrets upon widget removal.
Contributions are welcome — whether it's a new widget style, improved data visualization, or a bug fix.
Getting Started
# 1. Fork the repository and clone your fork
git clone https://github.com/your-username/GitStreakWidget.git
# 2. Create a feature branch
git checkout -b feature/your-feature-name
# 3. Make your changes and commit with a clear message
git commit -m "feat: add weekly heatmap widget style"
# 4. Push your branch
git push origin feature/your-feature-name
# 5. Open a Pull Request on GitHubGuidelines
- Keep commits atomic and well-described.
- Follow existing code style and architecture patterns.
- Add comments where behavior may not be immediately obvious.
- Test your changes on a physical device or emulator before opening a PR.


