About ChainOfDots

My Philosophy

ChainOfDots was created with a simple belief: habit tracking should be beautiful, minimal, respect your privacy, and most of all, not come with a subscription!

Inspired by GitHub's contribution graph, ChainOfDots provides a year-at-a-glance view of your habits with colorful circular dots. No complicated features, no distracting notifications—just a clean, focused tool to help you build better habits.

Open Source & Free

ChainOfDots is completely free and open source under the MIT license. You can:

  • Use it for free, forever
  • View and audit the source code
  • Self-host on your own server
  • Fork and modify for your own needs
  • Contribute improvements back to the project
View on GitHub →

Privacy & Security

Your data belongs to you. ChainOfDots implements industry-standard security practices:

  • AES-256 encryption - Habit names are encrypted server-side before storage
  • Bcrypt password hashing - Your password is never stored in plain text
  • User-specific encryption keys - Each user's data uses unique encryption keys
  • Server-side sessions - Secure authentication with automatic timeout
  • CSRF protection - Protected against cross-site attacks
  • Rate limiting - Brute force attack prevention
  • Data export - Download your data anytime in CSV or JSON format
  • Self-hosting option - Keep complete control of your data

Technology Stack

Frontend

  • React 18
  • Tailwind CSS
  • Pure JavaScript (ES6+)

Backend

  • PHP 8.3+
  • MySQL database with AES-256 encryption
  • Session-based auth

Creator

ChainOfDots is created and maintained by Tom Spetter, a designer/developer passionate about building simple, useful tools that respect user privacy.

Contributing

While ChainOfDots is primarily a personal project, contributions are welcome! Feel free to:

  • Report bugs or suggest features via GitHub Issues
  • Submit pull requests for bug fixes or improvements
  • Fork the project and customize it for your needs
  • Share ChainOfDots with others who might find it useful
View Issues on GitHub →

License

Code: MIT License - Free to use, modify, and distribute

Logo/Branding: © Tom Spetter - Please use your own branding when forking or deploying