Turn a repository into a living, collaborative artwork—where every contribution is a commit, and every pixel tells a story.
Check out Rules and How to Use
- 🕒 One paint per user every 24 hours
- 🔒 Each tile is locked for 1 hour after being painted
- 🎨 Any user can overwrite any tile (after lock expires)
Issue-Ink transforms GitHub into a real-time, serverless collaborative canvas.
Users interact with the system by opening issues. Each valid request triggers an automated workflow that updates the canvas, commits the change, and responds instantly—all within GitHub.
No external servers. No databases. Just pure GitHub.
User opens Issue
↓
GitHub Actions workflow triggers
↓
Input is validated and processed
↓
Canvas (SVG) + state (JSON) updated
↓
Changes committed back to repository
↓
User receives automated response
- Issues as Input → Users “paint” by submitting structured issue titles
- Actions as Compute → GitHub Actions process logic and enforce rules
- Repository as Database → State is stored in version-controlled JSON
- Commits as History → Every pixel change is permanently recorded
- Click “Paint a pixel”
- Submit an issue in the format:
Paint [A5] #FF5733
- The system will:
- Validate your input
- Update the canvas
- Commit the change
- Respond to your issue
- ⚡ Fully serverless — runs entirely on GitHub infrastructure
- 🔁 Event-driven — powered by GitHub Issue events
- 🧠 Stateful logic — tracks cooldowns, locks, and history
- 🎨 Live visual output — SVG canvas updates on every action
- 🤖 Automated interaction — comments, labels, and issue handling
Issue-Ink demonstrates how GitHub can function as a complete application platform, combining:
- Event handling
- Automation
- Persistent storage
- User interaction
All without leaving the ecosystem.
Build systems where users don’t just contribute code—
they interact, compete, and create together.
In Issue-Ink:
- Collaboration and chaos coexist
- Order emerges from randomness
- Every pixel is intentional—or not
Paint something meaningful.
Or don’t.
For questions or issues, contact: pranavmskrishnan@gmail.com