Skip to content

dszurek/controlhub

Repository files navigation

ControlHub

A self-hosted personal productivity hub built with Next.js 16, designed to run on a Raspberry Pi and be accessible from anywhere.

Features

  • Dashboard — customizable widget grid with clock, weather, today's tasks/events, productivity stats, focus timer, habits, mail badges, GitHub activity, AI briefing, and Home Assistant scenes
  • Tasks — full task management with projects, subtasks, priorities, due dates, time blocking, snoozing, blocker dependencies, task templates, comments, and linked emails/events
  • Calendar — day/week/month views, iCloud CalDAV sync, ICS feed subscriptions, Outlook integration, exportable merged ICS feed
  • Mail — unified inbox for Outlook and Gmail with email rules (alert/mute/spam), triage, and insights
  • Notes — daily markdown notes organized by date
  • Someday — "maybe" list for ideas that aren't tasks yet — promote to tasks when ready
  • Grades — class/category/assignment grade tracker with weighted GPA calculation
  • Chat — built-in assistant with Claude Code and Home Assistant Assist backends
  • Spaces — Home Assistant smart home control (devices, scenes, live state via WebSocket)
  • Habits — daily habit tracker with streak visualization

Tech Stack

  • Framework: Next.js 16 (App Router, React 19, standalone output)
  • Database: SQLite via Prisma 7 + better-sqlite3
  • Styling: Tailwind CSS 4 + custom earthy glassmorphism design system
  • Integrations: Home Assistant, Outlook (Microsoft Graph), Gmail, iCloud CalDAV, ICS feeds, GitHub, Open-Meteo weather, Claude Code CLI
  • Auth: Single-user password auth with HMAC-signed session cookies

Quick Start

# Clone the repository
git clone https://github.com/dszurek/controlhub.git
cd controlhub

# Install dependencies
npm install

# Set up environment
cp .env.example .env.local

# Run database migrations
npx prisma migrate deploy

# Start development server
npm run dev

Open http://localhost:3000 — you'll be prompted to set a password on first visit.

Production Deployment (Raspberry Pi)

See GUIDE.md for complete Raspberry Pi deployment instructions including:

  • OS and Node.js setup
  • Building and running the standalone server
  • Cloudflare Tunnel for secure remote access
  • Home Assistant integration
  • systemd auto-start service
  • Full feature guide

License

Private / Personal use.

About

A comprehensive productivity web app I'm working on for my day-to-day specific use cases, with smart home control, tasks, email integration, calendar integration, etc. Got tired of having 10 different apps to check on a daily basis, and decided to combine them all into one app that lives on the web, hosted on my raspberry pi.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors