Feature File Map
Use this document to find the first files to inspect for common Compass changes.
App Boot And Routing
- Frontend bootstrap:
packages/web/src/index.tsx - App provider tree:
packages/web/src/components/App/App.tsx - Root authenticated shell:
packages/web/src/views/Root.tsx - Router config:
packages/web/src/routers/index.tsx - Router loaders:
packages/web/src/routers/loaders.ts - Client version polling:
packages/web/src/common/hooks/useVersionCheck.ts - Update CTA wiring:
packages/web/src/views/Calendar/components/Sidebar/SidebarIconRow/SidebarIconRow.tsx
Authentication And Session
- Session initialization and SuperTokens wiring:
packages/web/src/auth/session/SessionProvider.tsx - User profile bootstrap:
packages/web/src/auth/context/UserProvider.tsx - Google authorization app flow:
packages/web/src/auth/google/authorization - Google redirect callback:
packages/web/src/views/GoogleAuthCallback/GoogleAuthCallback.tsx - Google authorization intent storage:
packages/web/src/auth/google/authorization/google-authorization.storage.ts - Auth schemas:
packages/web/src/auth/schemas/auth.schemas.ts - Backend auth routes:
packages/backend/src/auth/auth.routes.config.ts - Backend auth controllers/services:
packages/backend/src/auth/controllers,packages/backend/src/auth/services
Events
- Shared event schema/types:
packages/core/src/types/event.types.ts - Event helpers and recurrence utilities:
packages/core/src/util/event - Web event sagas:
packages/web/src/ducks/events/sagas - Web event slices/selectors:
packages/web/src/ducks/events/slices,packages/web/src/ducks/events/selectors - Elf event entity store:
packages/web/src/store/events.ts - Event API/repositories:
packages/web/src/ducks/events/event.api.ts,packages/web/src/common/repositories/event - Backend event routes:
packages/backend/src/event/event.routes.config.ts - Backend event controller/service:
packages/backend/src/event/controllers/event.controller.ts,packages/backend/src/event/services/event.service.ts
Tasks
- Shared task type used by local storage:
packages/web/src/common/types/task.types.ts - Day task hooks:
packages/web/src/views/Day/hooks/tasks - Task UI components:
packages/web/src/views/Day/components/TaskList - Drag handle floating placement guard:
packages/web/src/views/Day/components/Task/DraggableTask.tsx - Local storage for tasks:
packages/web/src/common/storage/adapter
Day / Week / Now Views
- Day view route and content:
packages/web/src/views/Day/view - Day view header (includes shortcuts toggle control):
packages/web/src/views/Day/components/Header/Header.tsx - Day shortcuts sidebar component:
packages/web/src/views/Day/components/ShortcutsSidebar/ShortcutsSidebar.tsx - Shared responsive sidebar state hook (
xlbreakpoint behavior):packages/web/src/common/hooks/useSidebarState.ts - Day keyboard shortcuts (includes
[toggle):packages/web/src/views/Day/hooks/shortcuts/useDayViewShortcuts.ts - Day view hooks:
packages/web/src/views/Day/hooks - Week/calendar view:
packages/web/src/views/Calendar - Now view:
packages/web/src/views/Now - Now keyboard shortcuts (includes
[toggle):packages/web/src/views/Now/shortcuts/useNowShortcuts.ts - Dedication dialog implementation (native
dialog+ hotkeys):packages/web/src/views/Calendar/components/Dedication/Dedication.tsx - Dedication dialog mount points:
- week view:
packages/web/src/views/Calendar/Calendar.tsx - day view:
packages/web/src/views/Day/view/DayViewContent.tsx
- week view:
Calendar Sidebar
- Sidebar shell and tab rendering:
packages/web/src/views/Calendar/components/Sidebar/Sidebar.tsx - Footer icon row actions (tasks/month, command palette, sync/update):
packages/web/src/views/Calendar/components/Sidebar/SidebarIconRow/SidebarIconRow.tsx - Sidebar layout constants and icon group styling:
packages/web/src/views/Calendar/components/Sidebar/styled.ts - Google connection/status UI contract for sidebar + command palette:
packages/web/src/auth/hooks/google/useConnectGoogle/useConnectGoogle.ts - Sidebar icon row behavior tests:
packages/web/src/views/Calendar/components/Sidebar/SidebarIconRow/SidebarIconRow.test.tsx
Offline Storage
- Adapter singleton and readiness:
packages/web/src/common/storage/adapter/adapter.ts - IndexedDB implementation:
packages/web/src/common/storage/adapter/indexeddb.adapter.ts - Legacy schema migration:
packages/web/src/common/storage/adapter/legacy-primary-key.migration.ts - Data/external migrations:
packages/web/src/common/storage/migrations
Sync And SSE
- SSE client:
packages/web/src/sse/client/sse.client.ts - SSE hooks:
packages/web/src/sse/hooks - SSE provider:
packages/web/src/sse/provider/SSEProvider.tsx - Shared SSE event names:
packages/core/src/constants/sse.constants.ts - Backend SSE server:
packages/backend/src/servers/sse/sse.server.ts - Events stream route:
packages/backend/src/events/events.routes.config.ts - Backend sync routes:
packages/backend/src/sync/sync.routes.config.ts - Public watch notification ingress:
packages/backend/src/sync/services/public-watch-notifications/public-watch-notification.ingress.ts - Google Watch lifecycle and notifications:
packages/backend/src/sync/services/watch - Google Calendar sync import and repair:
packages/backend/src/sync/services/google-sync/google-sync.service.ts - Google sync health diagnosis:
packages/backend/src/sync/services/google-sync/google-sync.health.ts - Compass-to-Google repair mirroring:
packages/backend/src/sync/services/event-propagation/compass-to-google/compass-to-google-backfill.ts - Sync record persistence:
packages/backend/src/sync/services/records/sync-records.repository.ts - Google import internals:
packages/backend/src/sync/services/import - Google/Compass event propagation:
packages/backend/src/sync/services/event-propagation
Users / Metadata / Priority
- User queries/services:
packages/backend/src/user - Priority feature:
packages/backend/src/priority - User metadata service:
packages/backend/src/user/services/user-metadata.service.ts - Mobile waitlist gate (web-only external link):
packages/web/src/components/MobileGate/MobileGate.tsx
Environment And Infra
- Backend env parsing:
packages/backend/src/common/constants/env.constants.ts - Web env parsing:
packages/web/src/common/constants/env.constants.ts - Express middleware order:
packages/backend/src/servers/express/express.server.ts - Health endpoint route/controller/tests:
packages/backend/src/health/health.routes.config.ts,packages/backend/src/health/controllers/health.controller.ts,packages/backend/src/health/controllers/health.controller.test.ts
CLI / Maintenance
- CLI entrypoint:
packages/scripts/src/cli.ts - Build command:
packages/scripts/src/commands/build.ts - Delete command:
packages/scripts/src/commands/delete.ts - Migration command:
packages/scripts/src/commands/migrate.ts - Seeders/migrations:
packages/scripts/src/migrations,packages/scripts/src/seeders
Test Anchors
- Retained Jest project config for
web,backend, andscripts:jest.config.js - Core test setup:
packages/core/src/__tests__ - Web test setup:
packages/web/src/__tests__ - Web mock server handlers:
packages/web/src/__tests__/__mocks__/server/mock.handlers.ts - Web floating-ui test setup:
packages/web/src/__tests__/floating-ui.setup.ts - Web memory-router test helper:
packages/web/src/__tests__/utils/providers/MemoryRouter.tsx - Backend test setup:
packages/backend/src/__tests__ - E2E tests:
e2e