A sleek macOS menu bar application that transforms your coding activity into beautiful GitHub-style contribution visualizations
Important
- 📈 Activity Visualization: GitHub-style contribution grid showing your daily coding activity
- 🕒 Real-time Tracking: Automatic synchronization with VSCode-based IDE's time tracking data
- 🎛️ Customizable Thresholds: Fine-tune activity levels and colors to match your workflow
- 📱 Native macOS Widgets: Beautiful system widgets in small and medium sizes
- ⚙️ Menu Bar Integration: Lightweight, unobtrusive system presence
- 🌈 Custom Color Schemes: Personalize your activity visualization colors
- 📅 Flexible Timeframes: View 30, 60, or 90 days of coding history
- 🎯 Activity Thresholds: 5 customizable activity levels from "No Activity" to "Highest Activity"
- 🚀 System Integration: Optional launch at system startup
- 📂 Repository Tracking: Monitor time spent across different projects
- 💻 Language Analytics: See which programming languages you use most - In Progress
- 📄 File-level Details: Detailed breakdown of time per file - In Progress
- 🔄 Auto-sync: Hourly background synchronization with manual refresh option
- VSCode-based IDE with the Time Extension installed
- macOS 15.0+ (Sequoia or later)
- Active coding in your IDE to generate tracking data
- The Time extension must be installed and active in your VSCode-based IDE (VSCode, Cursor, etc.)
- Data is automatically saved to the IDE's global storage directory (e.g.,
~/Library/Application Support/Cursor/User/globalStorage/n3rds-inc.time/codingTimeData.json) - CodeTrack reads this file to generate your activity visualization
- Download the latest release from the releases page (SOON)
- Install CodeTrack.app to your Applications folder
- Launch the application - it will appear in your menu bar
- Configure your settings via the menu bar dropdown → "Open CodeTrack Settings"
- Set up the data source path
- Add widgets to your desktop from the widget gallery
- Click the CodeTrack icon in your menu bar
- Select "Open CodeTrack Settings" to configure the app
- Verify the tracking data path points to your IDE's time tracking data
- Choose your preferred display timeframe (30/60/90 days)
- Customize activity thresholds and colors to your liking
- Right-click on your desktop and select "Edit Widgets"
- Search for "CodeTrack" in the widget gallery
- Choose between Small or Medium widget sizes
- Drag to your desired location on the desktop
- Your coding activity will automatically appear!
- Automatic: CodeTrack syncs hourly in the background
- Manual: Use the "Sync Now" button in settings for immediate updates
- Status Indicators: Green checkmark for successful sync, red X for errors
- System Integration: Toggle launch at startup
- Display Options: Select timeframe (30/60/90 days)
- Data Source: Configure path to your IDE's time tracking data
- Sync Status: Monitor synchronization health
- No Activity (0h): Gray, fixed color
- Low Activity (1h): Customizable light green
- Medium Activity (2h): Customizable medium green
- High Activity (4h): Customizable dark green
- Highest Activity (6h+): Customizable full green
Each threshold can be adjusted for both time duration and color representation.
- SwiftUI: Modern, declarative UI framework
- WidgetKit: Native macOS widget implementation
- App Groups: Secure data sharing between app and widgets
- UserDefaults: Configuration persistence
- FileManager: Secure file system access
- DataManager: Handles IDE data synchronization
- ConfigurationManager: Manages app settings and preferences
- ContributionGridView: GitHub-style activity visualization
- LoginItemManager: System startup integration
- Widget Timeline Provider: Manages widget update cycles
CodeTrack is in active development! Upcoming features include:
- 📊 Enhanced analytics and insights
- 🔄 Multi-IDE support beyond VSCode-based IDEs
- 📈 Detailed reporting and export options
- 🎨 Additional visualization styles
- ⚡ Performance optimizations
We welcome contributions! Whether it's bug reports, feature requests, or code contributions, your input helps make CodeTrack better.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- n3rds-inc for the Time extension that makes this integration possible