Skip to content

SwitchbackTech/compass

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2,271 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Compass Calendar

A daily planner for minimalists.

All your tasks and events in one place. Organize your day, stay on track, and focus.

Why Use Compass?

It'll help you focus and ship faster:

  • Plan faster: Organize your Month → Week → Day → Now in minutes.
  • Keyboard-first: Shortcuts and command palette for lightning-fast navigation.
  • Private & Offline: Runs fully local in your browser, with optional Google Calendar sync.
  • No bloat: No AI — just a clean, minimal interface to help you get things done.

Join thousands of minimalists who are staying organized and productive with Compass.

Short.Demo.mov

Features

The Unique Stuff

  • Day Mode: See your tasks and events side-by-side
  • Now Mode: Lock-in on a single task
  • Custom Note: Display a personal note-to-self for motivation or reminders
  • Someday/Maybe List: Organize future tasks without cluttering your schedule
  • One-Click Adjustments: Move events forwards or back effortlessly

The Essentials

  • Recurring events
  • Command palette
  • Event tagging, resizing, duplicating, reordering
  • Drag & drop
  • 2-way sync with Google Calendar (hosted or local via Ngrok)
  • Google OAuth authentication
  • User session management with Supertokens
  • Email capture via Kit

Current Limitations

  • Only supports primary Google Calendar (no sub-calendars)
  • No sharing, locations, reminders, or mobile app

We're actively working on improvements – check out our roadmap.

Tech Stack

  • Frontend: React, Redux, Tailwind CSS, TypeScript, Bun
  • Backend: Node.js, Express, TypeScript, MongoDB
  • Integrations: Google Calendar API, Google OAuth2, Socket.io
  • Testing: Bun, React Testing Library, Playwright

Getting Started

Try It Online

Head over to app.compasscalendar.com. No signup required

Self-host Compass

Run Compass on your own machine and keep your calendar data on your own infrastructure.

With Docker Desktop installed and running, install the local self-hosted stack:

curl -fsSL https://raw.githubusercontent.com/SwitchbackTech/compass/main/self-host/install.sh | sh

See docs/self-hosting.md for the full guide, including the inspect-before-run install path and manual setup notes.

Run Locally

Want to poke around as a developer?

Read the technical docs: All the info you'd need to get started, including guides on how to install, test, build, deploy, and contribute.

Development Workflow

# Quick start
bun install
cp packages/backend/.env.local.example packages/backend/.env.local
bun run dev:web  # Frontend on http://localhost:9080
bun run dev:backend # Backend on http://localhost:3000

# Testing
bun run test:core && bun run test:web && bun run test:backend
bun run test:e2e

# Type checking and linting
bun run type-check
bun run lint

Contributing

We love contributions! Whether it's bug fixes, new features, or documentation improvements, your help makes Compass better for everyone.

Issues: Check open issues or create a new one. Pull Requests: Fork the repo, make your changes, and submit a PR. Follow our Contribution Guidelines. Discussions: Join the conversation on GitHub Discussions.

First-time contributors? Look for issues labeled good first issue.

Community & Resources

Star the repo for good luck.