Repository navigation
Home
Krennix edited this page Sep 21, 2026
·
4 revisions
FourFold is a personal productivity dashboard combining an Eisenhower matrix, habit tracker, calendar, Pomodoro timer, and school/homework tracking in one app — built with React, TypeScript, and Vite, backed by Vercel serverless functions.
This wiki covers setup, architecture, and deployment in more depth than the README. If you just want to run the app locally, start with Setup.
-
Setup — step-by-step local setup: Google OAuth, Upstash
Redis, Anthropic API key, Spotify, running
vercel dev. -
Environment Variables — full reference for
every variable in
.env.example. -
Architecture — how the pieces fit together: pages,
state contexts, the
api/functions, auth, and storage. - Deployment — deploying to Vercel.
- Changelog — a human-readable release history.
| Module | What it does |
|---|---|
| Home | Dashboard combining widgets from every module |
| Eisenhower Matrix | Prioritize tasks by urgency/importance; link to calendar events or times |
| Habit Tracker | Daily checklists, streaks, yearly grids, and a Countdowns section for birthdays/anniversaries/deadlines |
| Calendar | Two-way Google Calendar sync, ICS backup feeds, event colors, and an hourly Day view |
| Friends | Track friends with notes, birthdays (synced to Countdowns), addresses, phone numbers, and custom fields. Also link arbitrary calendar events and countdowns via a unified search (:cd/:evnt to scope it) |
| Pomodoro | Timer with Spotify playback control |
| School | Homework tracking merged with Schoology, Canvas, and Google Classroom, plus an optional school bell-schedule integration |
| Agent | An Anthropic-powered assistant that can auto-schedule tasks/habits into free calendar time |
| Settings | Theme, data export/import, connected accounts, and per-device sidebar tab visibility |
FourFold is also installable as a PWA (offline app shell).
See CONTRIBUTING.md in the repo for the dev workflow, code style, and DCO sign-off requirement.
FourFold · MIT License · Report an issue · Changelog (currently v1.4.1)