Desktop widget built with Tauri to visualize GitHub contributions, switch themes, resize the widget, and keep the local user session.
If you only want to use the app and do not need the source code, you can download the Windows installer or executable from the Instalador/ folder in this repository.
- Local login with
GitHub usernameandPersonal Access Token - Local persistence with
localStorage - Profile and contributions loaded from the GitHub API
- Dynamic avatar in the header
- Logout from the widget menu
- Horizontal and vertical layouts
- Multiple visual themes
- Adjustable widget size
- Frameless, draggable, minimizable, and closable desktop window
- HTML
- CSS
- JavaScript
- Tauri
- Rust
To run the app locally you need:
- Node.js
- Rust
- Cargo
- Visual Studio Build Tools with
Desktop development with C++on Windows
You also need:
- GitHub username
- GitHub Personal Access Token
You can create a token here: https://github.com/settings/tokens
- Install dependencies:
npm install- Start the app in development mode:
npx tauri dev- Install dependencies:
npm install- Generate the production build:
npx tauri buildThe generated installer will be available in src-tauri/target/release/bundle/.
The app stores these values in local Tauri localStorage:
github_usergithub_tokenthemewidget_sizewidget_layout
When the app opens again, it reuses github_user and github_token to reconnect automatically.
index.html: widget structurescript.js: widget logic, login flow, menu actions, and GitHub requestscss/: widget styles and themesimg/: images used by the widgetscripts/prepare-tauri-assets.mjs: prepares static frontend assets for Tauri buildsrc-tauri/: native Tauri layer and app configurationassets/icono.ico: app icon source
- The current frontend is plain HTML, CSS, and JavaScript without a framework.
- Tauri uses
index.htmlas the entry point. - The window is configured as frameless and transparent to preserve the widget look.
- Window controls and drag behavior are implemented through Tauri integration without rewriting the frontend.
- Add support for automatic updates
- Store credentials more securely using a native keychain instead of only
localStorage - Add more widget customization options
- Improve installer distribution through GitHub Releases
- Add support for macOS and Linux builds with Tauri
- Improve loading, error, and empty states with clearer user feedback
The widget supports multiple themes, including:
- Github
- Cream
- Lavander
- Matcha
More themes can be added easily in css/styles_themes.css.





