Notion Workspace Setup
This project uses Notion for task management, planning, and active work tracking.
Why Notion + Docusaurus?
We use both systems with clear boundaries:
| System | Purpose |
|---|---|
| Notion | Active work, planning, brainstorming, task tracking |
| Docusaurus | Technical docs, API references, guides (version-controlled) |
Think of it as: Notion for the "now", Docs for the "forever"
Getting Started
1. Access the Workspace
See NOTION.md in the repo root for the workspace URL and quick links.
2. Use Notion's Built-in Templates (Recommended)
Don't reinvent the wheel! Notion has excellent templates:
- Open Notion
- Click "Templates" in the sidebar
- Browse to "Engineering" or "Product"
- Use one of these:
- "Engineering Wiki" - Great starting point
- "Sprint Board" - Agile sprint tracking
- "Product Roadmap" - Feature planning
- "Bug Tracker" - Simple bug database
Recommended combo:
- Start with "Sprint Board" template
- Add "Bug Tracker" template
- Customize only if you need specific fields
3. If You Need Custom Databases
Only create custom databases if the templates don't work for you.
Simple Custom Structure
If templates don't fit, here's a minimal setup:
Features Database:
Properties:
- Name (title)
- Status (select: Planned, In Progress, Review, Done, Icebox)
- Priority (select: P0, P1, P2, P3)
- Effort (select: XS, S, M, L, XL)
- Sprint (relation to Sprints)
- Owner (person)
- GitHub Issue (URL)
Views:
- Kanban (by Status)
- Roadmap (timeline)
- By Priority (table)
Tasks Database:
Properties:
- Name (title)
- Status (select: Todo, In Progress, Complete, Blocked)
- Type (select: Feature, Bug, Chore, Docs)
- Feature (relation to Features)
- Assignee (person)
- Due Date (date)
Views:
- My Tasks (filtered by Assignee)
- Sprint Board (kanban by Status)
- All Tasks (table)
Bugs Database:
Properties:
- Name (title)
- Priority (select: Critical, High, Medium, Low)
- Status (select: New, Investigating, Fixing, Fixed, Won't Fix)
- Reported (date)
- Fixed In (text - version/commit)
- GitHub Issue (URL)
Views:
- Active Bugs (filtered: not Fixed/Won't Fix)
- By Priority (grouped)
- Closed (filtered: Fixed/Won't Fix)
Simple Workflow (Using Templates)
Option A: Just Use Sprint Board Template
- Add "Sprint Board" template from Notion
- It comes with:
- ✅ Todo/In Progress/Done columns
- ✅ Task assignments
- ✅ Priorities
- ✅ Dates
- Start using it immediately - no customization needed!
Option B: Combine Multiple Templates
- "Sprint Board" for current work
- "Bug Tracker" for bugs
- "Roadmap" for planning
Link them together as you go.
Custom Sprint Setup (Advanced)
Only do this if templates don't work. Create a Sprints Database:
Properties:
- Name (title) - e.g., "Sprint 3: Guild Roster Sync"
- Start Date (date)
- End Date (date)
- Status (select: Planning, Active, Complete)
- Goal (text)
Template:
## Sprint Goal
[What we want to achieve]
## Features
[Relation to Features Database]
## Tasks
[Relation to Tasks Database]
## Notes
[Daily updates, blockers, decisions]
Workflow
Daily Work
- Check Notion - See your tasks for the day
- Update status - Move cards as you work
- Add notes - Document blockers, decisions
- Link commits - Reference GitHub issues/PRs
Feature Completion
When a feature is done:
- Mark feature as ✅ Done in Notion
- Document in Docusaurus if needed:
- New API endpoints →
docs/docs/api/ - Architecture changes →
docs/docs/architecture/ - User guides →
docs/docs/guides/
- New API endpoints →
- Link from Notion to the docs page
Design Decisions
- Brainstorm in Notion - Create RFC page
- Discuss and decide - Add comments, iterate
- Finalize in Docs - Create architecture doc
- Archive Notion page - Link to docs, mark as ✅ Decided
Tips
Keep It Simple
- Don't over-engineer your workspace
- Start with basic databases
- Add complexity only when needed
Useful Views
Quick Win View (Tasks):
- Filter: Effort = XS or S
- Sort: Priority (high to low)
- Great for "what can I knock out quickly?"
Blocked View (Tasks):
- Filter: Status = Blocked
- Shows what needs attention
This Sprint (Features):
- Filter: Sprint = Current Sprint
- See what you committed to
Templates
Create page templates for:
- Sprint Planning
- Feature Spec
- Bug Report
- Meeting Notes
Integration with GitHub
Linking Issues
Always cross-reference:
- Notion task → Add GitHub issue URL
- GitHub issue → Reference Notion task ID in description
Example GitHub issue:
## Context
See Notion task: `TASK-123`
## Description
[...]
When to Use Each
GitHub Issues:
- Bug reports from users
- Feature requests from community
- Technical discussions in comments
Notion:
- Internal planning
- Sprint organization
- Private notes/decisions
Common Patterns
Feature Development
- Create feature in Notion
- Break into tasks
- Assign to sprint
- Create GitHub issues for each task
- Link issues in Notion
- Work and update both
- When done, document in Docusaurus
Bug Fixes
- Report in GitHub Issues (public)
- Create Notion bug card (tracking)
- Investigate and update status
- Fix and close both
- Update docs if behavior changed
Maintenance
Weekly
- Archive completed sprints
- Clean up stale tasks
- Review backlog priorities
Monthly
- Review roadmap
- Archive old RFCs
- Update documentation links
Remember: Notion is your workspace, Docs is your reference. Keep active work in Notion, finalized knowledge in Docs.