Skip to content

funinkina/weekly-commits

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

53 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Weekly Commits Logo

Weekly Commits

A GNOME Shell extension to visualize your GitHub contributions in the top bar

Weekly Commits Extension Screenshot

Get it on GNOME Extensions

License GitHub stars GitHub issues Last commit GNOME Shell Version

πŸ”₯ Features

Weekly Commits transforms your GitHub activity into a beautiful visual representation directly in your GNOME Shell top bar. Stay motivated and track your coding consistency at a glance!

✨ Core Features

  • πŸ“Š Visual Contribution Calendar: Seven colorful boxes representing your weekly commit activity
  • πŸ–±οΈ Interactive Popup: Click to see detailed daily commit counts
  • βš™οΈ Easy Configuration: Simple GUI preferences for GitHub credentials and settings
  • πŸ”„ Auto-sync: Configurable intervals to keep your data fresh
  • πŸ“ Flexible Positioning: Place the widget anywhere on your top bar

🎨 Theming & Customization

  • 14+ Beautiful Themes: GitHub, Dracula, Halloween, Panda, Solarized, and more
  • Dual Coloring Modes:
    • Opacity-based: Subtle transparency effects
    • Grade-based: Distinct color intensities
  • Week Start Options: Choose between Monday or Sunday start
  • Custom Positioning: Perfect alignment with your workflow

πŸš€ Installation

Method 1: GNOME Extensions (Recommended)

  1. Visit the GNOME Extensions page
  2. Click "Install" and follow the browser prompts
  3. Enable the extension in the GNOME Extensions app

Method 2: Manual Installation

  1. Clone the repository:

    git clone https://github.com/funinkina/weekly-commits.git
  2. Install to extensions directory:

    mv weekly-commits ~/.local/share/gnome-shell/extensions/[email protected]
  3. Restart GNOME Shell:

    • X11: Press Alt + F2, type r, and press Enter
    • Wayland: Log out and log back in
  4. Enable the extension:

    gnome-extensions enable [email protected]

    Or use the GNOME Extensions app

System Requirements

  • GNOME Shell 46, 47, or 48
  • Internet connection for GitHub API access

βš™οΈ Configuration

GitHub Authentication Setup

To start tracking your commits, you'll need to configure your GitHub credentials:

Step 1: Generate a Personal Access Token

  1. Go to GitHub Personal Access Tokens
  2. Create a Fine-grained Personal Access Token with:
    • Repository Access: "All repositories" or select specific ones
    • Permissions: Read access to repository metadata and contents
  3. Copy the generated token

Step 2: Configure the Extension

  1. Right-click on the Weekly Commits widget in your top bar
  2. Select "Preferences" or use the GNOME Extensions app
  3. Enter your:
    • GitHub Username: Your GitHub account username
    • Personal Access Token: The token you generated in Step 1

Step 3: Customize Settings (Optional)

  • Update Interval: How often to refresh data (default: 1 hour)
  • Position: Where to place the widget in the top bar
  • Theme: Choose from 14+ beautiful color themes
  • Coloring Mode: Opacity-based or grade-based visualization
  • Week Start: Monday or Sunday

πŸ”’ Privacy & Security

  • Your token is stored locally and only used to fetch your public contribution data
  • No data is transmitted to third parties
  • The extension only reads your commit history, never modifies anything

🎨 Available Themes

Weekly Commits comes with a variety of beautiful themes to match your desktop:

Theme Description
GitHub Classic GitHub contribution graph colors
Dracula Popular dark theme with purple accents
Halloween Spooky orange and black theme
Panda Cute panda-inspired green theme
Solarized Dark/Light Popular developer color schemes
Blue, Pink, Teal Vibrant single-color themes
Sunny, YlGnBu Gradient and scientific visualization themes

πŸ› οΈ Development & Contributing

Building from Source

# Clone the repository
git clone https://github.com/funinkina/weekly-commits.git
cd weekly-commits

# Install to local extensions directory
make install

# Enable the extension
make enable

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Commit your changes: git commit -m 'Add amazing feature'
  4. Push to the branch: git push origin feature/amazing-feature
  5. Open a Pull Request

Roadmap

  • βœ… Settings page for GitHub credentials
  • βœ… Automatic data fetching with configurable intervals
  • βœ… Customizable top bar positioning
  • βœ… Interactive daily commit popup
  • βœ… Week start day configuration (Monday/Sunday)
  • βœ… Multiple color themes and coloring modes
  • πŸ”„ Customizable commit view thresholds
  • πŸ”„ Internationalization and translations
  • πŸ”„ Support for multiple GitHub accounts
  • πŸ”„ Additional visualization modes

πŸ’– Support the Project

If you find Weekly Commits useful, consider supporting its development:

πŸ› Troubleshooting

Common Issues

Extension not showing commits?

  • Verify your GitHub username is correct
  • Ensure your Personal Access Token has proper permissions
  • Check your internet connection
  • Look for error messages in journalctl -f while testing

Widget not appearing in top bar?

  • Make sure the extension is enabled in GNOME Extensions app
  • Try restarting GNOME Shell (Alt+F2, type r, press Enter on X11)
  • Check if the extension is compatible with your GNOME Shell version

Need help?

  • Open an issue on GitHub
  • Check existing issues for solutions
  • Provide your GNOME Shell version and error logs

πŸ‘₯ Credits

This project exists thanks to the contributions of:

πŸš€ Core Development

  • Aryan Kushwaha (@funinkina) - Original Creator & Lead Developer
    • Initial extension concept and implementation
    • Core GitHub API integration
    • Base UI and functionality
    • Project architecture and design decisions

✨ Feature Development & Enhancements

  • Aryan Techie (@Aryan-Techie) - Feature Developer & Contributor
    • Theme system implementation (14+ color themes)
    • Settings page enhancements and instant save functionality
    • UI/UX improvements and bug fixes
    • About section enhancements
    • New Icon design and branding improvements
    • Comprehensive documentation overhaul

Want to contribute? Check our Contributing Guidelines and join us!

πŸ“„ License

This project is licensed under the MIT License. See the LICENSE file for details.

πŸ”— Links


Made with ❀️ for the GNOME community

Legal Notice: This project is not affiliated with or endorsed by GitHub, Inc. or the GNOME Foundation. The use of the GitHub logo and name is for informational purposes only and does not imply any endorsement or affiliation with GitHub, Inc. All trademarks and copyrights are the property of their respective owners.