All Projects

Daily Hub.

A quiet, local command center for people juggling more than one project at a time — what's open, what belongs where, what must happen today, and what's already done.

Developer Tools / ProductivityActiveMITTypeScriptNode.js 22+Local SQLiteNone required
14
MCP tools
4
Core surfaces
~80MB
First download
0
Accounts needed

Overview

Problem

AI made shipping projects easy — and made tracking them hard

A thought becomes a prototype, a tool, or an open-source repo before the day is over. That's a real gift, but every promising idea quietly becomes another commitment: another repo, another issue, another release to remember alongside client work, side builds, and daily habits.

Notion, Linear, and Jira are built for deep documentation and shared workflows. Daily Hub isn't trying to replace them — it's the morning surface underneath all of it: open a page, pick a project, add the next task, see the day.

Surface

Four screens, one source of truth

Everything reads from and writes to the same local SQLite database — no accounts, no sync service, no separate mobile app to fall out of date with the desktop one.

Today
greeting, quick add, nudges, today's habits, open work by project, inbox
Projects
status, due dates, milestones, stalled-work banners
Habits
weekday schedules, 14-day consistency, completion rate
Analytics
completions over time, project breakdown, weekday patterns
Agent access

The MCP endpoint reads and writes the same data you see

A local, token-protected MCP server starts by default at `/mcp` on the app's own port, bound to 127.0.0.1. An AI client can list and create projects, tasks, inbox items, and habits, and mark work complete against the exact database backing the UI — no separate export, no stale snapshot.

How it works

There is no separate API server: reads go through Server Components straight to Prisma, writes go through Server Actions in a transaction, and both revalidate the same four routes. The same SQLite database backs an MCP endpoint, so an AI client reads and writes through the identical source of truth a person sees on screen — no separate sync path to drift out of date.

Today / Projects / Habits / Analytics
Server Components read, Client Components write via Server Actions
Prisma
typed queries + transactions
SQLite
single data.db file, local by default
Local MCP endpoint
token-protected /mcp, same database

Install & use

npx (no install)
$ npx @baselhusam/daily-hub
Docker
$ docker run -d --name dailyhub -p 9999:9999 \
$ -v dailyhub_data:/app/data \
$ ghcr.io/baselhusam/daily-hub:latest
quick start
$ npx @baselhusam/daily-hub --seed # opens http://127.0.0.1:9999 with sample data
$ npx @baselhusam/daily-hub mcp # print a ready-to-copy MCP client config
$ npx @baselhusam/daily-hub --detach # run in the background, manage with status/logs/stop

Commands

daily-hubStart the app on :9999, opening the browser
--seedPopulate sample data on first run
--port <n>Run on a different port
--data-dir <path>Use a custom data directory instead of ~/.daily-hub/
--no-mcpDisable the local MCP endpoint for this launch
--detachRun in the background; manage with status / logs / stop
--updateFetch and run the latest published release
mcpPrint a ready-to-copy MCP client configuration

Agent / MCP tools

list_projects

List all projects with status and open task counts

list_tasks

List tasks, optionally filtered by project

list_inbox

List unsorted inbox items

list_habits

List recurring habits and their weekday schedules

create_project

Create a new project

update_project

Update a project's fields

create_task

Add a task to a project or the inbox

update_task

Edit an existing task

set_task_completion

Mark a task done or not done

create_inbox_item

Capture an unsorted item for later triage

create_habit

Define a new recurring habit

update_habit

Edit a habit's schedule or details

set_habit_completion

Mark a habit done for a given day

get_stats

Fetch DailyHub's own completion and activity statistics

Built with

Next.js
App Router — Server Components + Server Actions, no separate API server
TypeScript
end to end
Prisma + SQLite
local-by-default data layer, one file on disk
Zod
Server Action input validation
Recharts
analytics — completions, project breakdown, weekday patterns
MCP SDK
local, token-protected Model Context Protocol server
Docker
npm package, GHCR image, or docker compose