Boards
Boards are the central workspace where you manage tasks, track progress, and collaborate with your team.
Board Structure
Board
├── Groups (visual sections)
│ ├── Group: "To Do"
│ ├── Group: "In Progress"
│ └── Group: "Done"
├── Columns (data fields)
│ ├── Name, Status, Person, Date, Priority...
└── Tasks (work items)
├── Task 1
├── Task 2
└── Task 3Creating a Board
From Template
- Click "Add Board" in the sidebar
- Select a template:
- Project Management - Basic project tracking
- Sprint Planning - Agile sprints
- Bug Tracker - Issue tracking
- Content Calendar - Content planning
- CRM - Customer relationship management
- Name your board and create
From Scratch
- Click "Add Board" → "Start from scratch"
- Enter board name and description
- Configure initial columns
From Spreadsheet
Import existing data from Excel or CSV:
- Click "Add Board" → "Import"
- Upload your spreadsheet file
- Map columns to Sunday column types
- Review and import
Board Views
Switch between views using the view switcher in the board header.
Table View
Spreadsheet-like interface with:
- Inline editing
- Column resizing
- Column reordering
- Sorting
- Filtering
Kanban View
Drag-and-drop cards organized by status:
- Cards move between columns
- Visual progress tracking
- Quick status updates
Timeline View
Gantt-style chart for project planning:
- Drag to adjust dates
- Visualize task duration
- See dependencies
Calendar View
Date-based view showing:
- Tasks on their due dates
- Month/week navigation
- Quick task creation on dates
Dashboard View
Charts and analytics:
- Status distribution pie chart
- Priority breakdown
- Team workload bar chart
- Progress over time
Workload View
Team capacity planning:
- Tasks per person
- Time allocation
- Identify bottlenecks
Board Settings
Access settings via the gear icon in the board header.
General Settings
- Name - Board display name
- Description - Board purpose
- Theme - Light or dark mode
- View Density - Compact, comfortable, or spacious
Background
Customize the board appearance:
- Solid colors
- Gradients
- None (default)
Members
Manage team access:
| Role | Permissions |
|---|---|
| Admin | Full access, manage members, delete board |
| Editor | Add/edit tasks, manage groups/columns |
| Viewer | Read-only access |
Inviting Members
- Click "Invite" in the board header
- Search for users by email
- Select their role
- Send invitation
POST /api/boards/[id]/invite
Content-Type: application/json
{
"userId": "user-id-here",
"role": "editor"
}Groups
Groups visually organize tasks within a board.
Create Group
POST /api/boards/[id]/groups
Content-Type: application/json
{
"name": "New Group",
"color": "#3B82F6"
}Group Actions
- Collapse/Expand - Hide group contents
- Rename - Double-click the name
- Recolor - Click the color indicator
- Delete - Removes group (tasks move to default group)
API Reference
Create Board
POST /api/boards
Content-Type: application/json
{
"name": "Project Alpha",
"workspaceId": "workspace-id",
"description": "Main project board"
}Update Board
PATCH /api/boards/[id]
Content-Type: application/json
{
"name": "Updated Name",
"description": "New description",
"background": {
"type": "gradient",
"value": "linear-gradient(135deg, #667eea 0%, #764ba2 100%)"
}
}Delete Board
DELETE /api/boards/[id]Store Usage
import { useAppStore } from '@/lib/store'
// Get current board
const selectedBoardId = useAppStore((s) => s.selectedBoardId)
const currentBoard = useAppStore((s) =>
s.boards.find(b => b.id === s.selectedBoardId)
)
// Board actions
const addBoard = useAppStore((s) => s.addBoard)
const updateBoard = useAppStore((s) => s.updateBoard)
const deleteBoard = useAppStore((s) => s.deleteBoard)
const selectBoard = useAppStore((s) => s.selectBoard)
// Select a board
selectBoard('board-id')
// Change view
const setCurrentView = useAppStore((s) => s.setCurrentView)
setCurrentView('kanban')