A simple, visual way to organize your work. Create boards, add tasks, and drag them across columns to track progress — just like sticky notes on a whiteboard, but better.
- Organize with boards and lists — Set up columns like "To Do", "In Progress", and "Done", then drag tasks between them as work moves forward.
- Collaborate with your team — Share a board with others and see who's online in real time.
- Label and categorize — Tag tasks with color-coded labels and emoji so you can spot what matters at a glance.
- Sync with Google Calendar — Attach due dates to tasks and have them appear on your calendar automatically.
- Sign in with Google — No new account needed. Just sign in with your existing Google account.
- Open the app and sign in with your Google account.
- Create a new board from the sidebar.
- Add lists (columns) to represent stages of your workflow.
- Add tasks, drag them around, label them, and share the board with your team.
This repo is an npm workspaces monorepo orchestrated with Turborepo:
- packages/client — Angular 22 app (primary, deployed to Firebase Hosting)
- packages/client-legacy — original React 19 + Vite app (kept for reference, no longer deployed)
Shared root files: firebase.json, firestore.rules, storage.rules, turbo.json, and the CI workflows under .github/workflows.
Install dependencies for every workspace:
npm installRun the Angular client (primary):
npm run dev # ng serve on http://localhost:5173
npm run build # ng build → packages/client/dist/board/browser
npm test # ng testRun the React legacy client:
npm run dev:legacy # vite dev server
npm run build:legacy # vite build → packages/client-legacy/dist
npm run test:legacy # vitestRun a task across every workspace at once:
npm run build:all # turbo run build (both packages)
npm run test:all # turbo run test (both packages)All of the scripts above delegate to turbo run <task> under the hood, so repeat runs with unchanged inputs are served from the local turbo cache in .turbo/.