user-img

Logan Fouts

+ Follow

Contrib Cal: A Physical GitHub Contribution Calendar

A Raspberry Pi Zero gadget that turns your GitHub commit history into a glowing desk display as well as a self-hosted software hub.

Contrib Cal: A Physical GitHub Contribution Calendar
 
  • thumbnail-img
  • thumbnail-img
  • thumbnail-img
 

Hardware Components

  • USBC 5v Decoy

    X 1 fenxiang
  • M2.5*4 Skrew

    X 4
  • M3*12 Skrew

    X 4
  • Jumper Wires

    X 5
  • Custom PCB From PCBWAY

    X 1 fenxiang
  • M3 x 3mm Female Thread Brass Knurled Threaded Insert Countersunk

    X 1 fenxiang

Tools, APP Software Used etc.

  • Soldering iron

  • 3D Printer

  • Raspberry Pi Imager

  • Python Programming Language

    Guido van Rossum
  • Bash

  • GitHub API

Story

What is this project?

The Contrib Cal is a physical, glowing calendar that sits on your desk and visualizes your GitHub contribution graph in real life. Powered by a Raspberry Pi Zero W, it's more than just a light-up toy; it's a fully open-source platform that can also run self-hosted software like Pi-hole, Tailscale, and Syncthing with a single click.

Features & Design

  • Real GitHub Integration: Connects to the GitHub API to light up an 84-LED grid based on your commit history.

  • Hackable MicroPython Firmware: Easy to modify and add new features like weather animations.

  • Web Interface: Control everything from a simple browser-based UI.

  • Custom PCB & 3D-Printed Case: Designed for a clean, professional look. All design files are open-source.

  • One-Click Software Deployment: Transform the device into a server for ad-blocking, VPN, or file-syncing.

How does it work?

The Raspberry Pi Zero W runs a Python script that periodically fetches your contribution data from GitHub. It then maps this data to a grid of NeoPixels (WS2812B LEDs), lighting them up green for commits. A web server allows you to change settings without touching the code.

Step-by-Step Tutorial

Full instructions, code, and design files are available on the GitHub repository: https://github.com/Logan-Fouts/CCal_V2 or on instructables https://www.instructables.com/Contrib-Cal-Github-Desk-Gadget/ 

For a visual guide, watch the complete assembly video on YouTube: https://www.youtube.com/watch?v=vU_tsjnP8HE

Key Steps:

  1. Source the Components: Gather the PCB, Pi Zero, LEDs, and hardware.

  2. Solder the LEDs: Carefully solder the LED matrix to the custom PCB.

  3. Print the Case: 3D print the face and back plates.

  4. Assemble: Install heat-set inserts, screw in the PCB and Raspberry Pi, and wire up the power and data lines.

  5. Software Setup: Flash the MicroSD card and get it connected to your wifi, follow the getting started guide on github, and configure your GitHub settings.

Topic
View All

Contrib Cal: A Physical GitHub Contribution Calendar

A Raspberry Pi Zero gadget that turns your GitHub commit history into a glowing desk display as well as a self-hosted software hub.

2.3k
 
1
0
0
These revenues will go back into supporting creators, contests, and the open source ecosystem, and more.

Share your project on social media to expand its influence! Get more people to support it.

  • Comments( 0 )
  • Like( 1 )
/1000
Upload a photo:
You can only upload 1 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP

You May Also Like

View All
Add to cart
Board Type : GerberFile :
Layer : Dimensions :
PCB Qty :
Different PCB Design
PCB Thickness : PCB Color :
Surface Finish : Castellated Hole :
Copper Weight : 1 oz Production Time :
Total: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.

PCB Assembly

PCBA Qty: BomFile:
NO. OF UNIQUE PARTS: NO. of Components:
Country: Shipping Way:
Assembly Cost: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
3dPrintingFile : Size :
Unit : Volumn :
3D Printing Qty : Material :
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Acrylic Type : AcrylicFile :
Dimensions: Engrave:
Acrylic Qty :
Acrylic Thickness:
Acrylic Color:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
CNC Milling File : Size:
Unit: Volumn:
CNC Milling Qty : Material:
Type of Aluminum: Surface Finish:
Tolerance:
Surface Roughness:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Item Price Qty Subtotal Delete
Total: US $0.00
Certified Product | Supported Purchase: Full After-sales Protection