diff --git a/README.md b/README.md index b338b56bb..8a46d41bd 100644 --- a/README.md +++ b/README.md @@ -1,84 +1,89 @@ # 🧭 Compass Calendar -_A minimal task manager for engineers._ +**A minimalist task manager designed for engineers.** -_All your tasks & events in one place_ +All your tasks and events in one place. Organize your day, stay on track, and ship more code. -_Organize your day and stay on track_ +## 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 engineers who are staying organized and productive with Compass. https://github.com/user-attachments/assets/ba7b91b9-1984-49f2-afc6-7fcda1100b31 --- -## Benefits +## Features -### 🧘 Get clear +### The Unique Stuff -Plan your Month β†’ Week β†’ Day β†’ Now +- **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 -### 1️⃣ Simplify your life +### The Essentials -One app for tasks, events, and plans +- 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 -### ⚑ Go fast +### Current Limitations -Shortcuts, command palette, lightweight code +- Only supports primary Google Calendar (no sub-calendars) +- No sharing, locations, reminders, or mobile app (yet!) -### πŸ”„ Keep your GCal +We're actively working on improvements – check out our [roadmap](https://github.com/orgs/SwitchbackTech/projects/4). -Events sync to Google Calendar\* +## Getting Started -## Features +### Try It Online -### The unique stuff +Head over to [app.compasscalendar.com](https://app.compasscalendar.com?utm_source=github&utm_medium=referral&utm_campaign=readme) -- β˜€οΈ Day mode: See your tasks and events side-by-side -- 🎯 Now mode: Lock-in on a single task -- ✍️ Display custom note-to-self -- β˜‘οΈ Organize tasks in a Someday / Maybe list -- ⏩ Move an event forward/back with one click +No signup required β€” start planning instantly! -### The basics +### Run Locally -- πŸ”„ Recurring events -- ⚑ Command palette -- ⚑ Shortcuts -- πŸ•’ Display events in local time -- 🏷️ Tagging events -- πŸ–οΈ Resizing events -- πŸ–οΈ Duplicating events -- πŸ–οΈ Reordering tasks -- πŸ–οΈ Drag & drop -- πŸ”„ **Hosted** 2-way sync with Google Calendar -- πŸ”„ **Local** 2-way sync with Google Calendar (Ngrok proxy) -- πŸ” Google OAuth authentication -- πŸ” User session management (Supertokens) -- βœ‰οΈ Email capture (Kit) +Want to poke around or run it self-hosted? -### Limitations +[Read the technical docs](https://docs.compasscalendar.com?utm_source=github&utm_medium=referral&utm_campaign=readme): All the info you'd need to get started, including guides on how to install, test, build, deploy, and contribute. -Features we don't support yet: +## Tech Stack -- πŸ“‚ Sub-calendars (\*only primary calendar is supported) -- πŸ”— Sharing -- πŸ“ Location -- ⏰ Reminders -- πŸ“± Mobile app +- **Frontend**: React, Redux, Tailwind CSS, TypeScript, Webpack +- **Backend**: Node.js, Express, TypeScript, MongoDB +- **Integrations**: Google Calendar API, Google OAuth2, Socket.io +- **Testing**: Jest, React Testing Library +- **Other**: Yarn workspaces for monorepo management -## Next Steps +## Contributing -- 🧭 [Try the app](https://app.compasscalendar.com?utm_source=github&utm_medium=referral&utm_campaign=readme): Give it a spin before setting it up locally. +We love contributions! Whether it's bug fixes, new features, or documentation improvements, your help makes Compass better for everyone. -- πŸ“ƒ [Read the technical docs](https://docs.compasscalendar.com?utm_source=github&utm_medium=referral&utm_campaign=readme): All the info you'd need to get started, including guides on how to install, test, build, deploy, and contribute. +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](https://docs.compasscalendar.com/docs/contribute). +Discussions: Join the conversation on GitHub Discussions. -- πŸ“˜ [Read the handbook](https://compasscalendar.notion.site/?utm_source=github&utm_medium=referral&utm_campaign=readme): Why Compass exists and how it fits into our loooooong-term vision. +First-time contributors? Look for issues labeled "good first issue"! -- πŸ‘€ Stay in touch: [GitHub Discussions](https://github.com/SwitchbackTech/compass/discussions), [X (Twitter)](https://x.com/CompassCalendar), [YouTube](https://youtube.com/playlist?list=PLPQAVocXPdjmYaPM9MXzplcwgoXZ_yPiJ&si=jssXj_g9kln8Iz_w), [LinkedIn](https://www.linkedin.com/company/compass-calendar) +## Community & Resources -## Tech Stack +- **Handbook**: [compasscalendar.notion.site](https://compasscalendar.notion.site/Compass-Handbook-26b237bde8f4805c9a56de6db3a7993d/?utm_source=github&utm_medium=referral&utm_campaign=readme) +- **Twitter**: [@CompassCalendar](https://x.com/CompassCalendar) +- **Youtube**: [Playlist](https://youtube.com/playlist?list=PLPQAVocXPdjmYaPM9MXzplcwgoXZ_yPiJ&si=jssXj_g9kln8Iz_w) +- **LinkedIn**: [Compass Calendar](https://www.linkedin.com/company/compass-calendar) -![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB) ![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white) ![NodeJS](https://img.shields.io/badge/node.js-6DA55F?style=for-the-badge&logo=node.js&logoColor=white) ![Google Cloud](https://img.shields.io/badge/GoogleCloud-%234285F4.svg?style=for-the-badge&logo=google-cloud&logoColor=white) ![MongoDB](https://img.shields.io/badge/MongoDB-%234ea94b.svg?style=for-the-badge&logo=mongodb&logoColor=white) ![Redux](https://img.shields.io/badge/redux-%23593d88.svg?style=for-the-badge&logo=redux&logoColor=white) ![Express.js](https://img.shields.io/badge/express.js-%23404d59.svg?style=for-the-badge&logo=express&logoColor=%2361DAFB) ![Socket.io](https://img.shields.io/badge/Socket.io-black?style=for-the-badge&logo=socket.io&badgeColor=010101) -![Webpack](https://img.shields.io/badge/webpack-%238DD6F9.svg?style=for-the-badge&logo=webpack&logoColor=black) ![Yarn](https://img.shields.io/badge/yarn-%232C8EBB.svg?style=for-the-badge&logo=yarn&logoColor=white) ![Styled Components](https://img.shields.io/badge/styled--components-DB7093?style=for-the-badge&logo=styled-components&logoColor=white) ![TailwindCSS](https://img.shields.io/badge/tailwindcss-%2338B2AC.svg?style=for-the-badge&logo=tailwind-css&logoColor=white) -![Jest](https://img.shields.io/badge/-jest-%23C21325?style=for-the-badge&logo=jest&logoColor=white) -![Testing-Library](https://img.shields.io/badge/-TestingLibrary-%23E33332?style=for-the-badge&logo=testing-library&logoColor=white) -![Ngrok](https://img.shields.io/badge/ngrok-1F1F1F?style=for-the-badge&logo=ngrok&logoColor=white) +Star the repo for good luck.