Free Download

AFFiNE Quick Setup Guide

Deploy your own open-source productivity workspace with AFFiNE (affine.pro). Docs, whiteboards, and databases — fully self-hosted in under 30 minutes.

Step 1

Deploy AFFiNE with Docker

Self-host AFFiNE on your own server. The official Docker image includes the server, database, and sync engine in one container.

Quick start:
Run: docker run -p 3000:3000 ghcr.io/toeverything/affine-graphql:stable
Or use docker-compose with PostgreSQL for production deployment
Access at http://localhost:3000 and create your admin account
Enable HTTPS via reverse proxy (Caddy / Nginx + Let's Encrypt)
Persist data with named volumes or bind mounts
Step 2

Create Your Workspace & Pages

After signing in, create a workspace — your top-level container for all content. AFFiNE uses a hierarchical page tree similar to Notion.

Get started:
New Workspace → Name it (e.g., "Personal", "Work", "Journal")
Create pages with slash-command menu (press /)
Types: Document pages for long-form content, Edgeless pages for whiteboards
Nest pages by dragging into the sidebar tree
Organise with emoji icons and cover images on each page
Step 3

Set Up Docs & Whiteboards

AFFiNE's dual-mode editor lets you switch between a document view and an infinite whiteboard — even on the same page.

Features:
Doc mode — rich text editor with headings, checklists, code blocks, callouts
Edgeless mode — infinite canvas with shapes, connectors, text, sticky notes
Toggle between modes using the icon in the top toolbar
Embed images, files, and links anywhere on the canvas
Real-time collaboration when self-hosted with WebSocket sync enabled
Step 4

Configure Linked Databases

AFFiNE supports inline databases that work like lightweight spreadsheets or Notion-style property tables.

Create a database:
✓ Type /database in any doc to insert an inline table
✓ Add columns: Text, Number, Select, Date, Checkbox, URL
Filter rows by any column value
Group rows by a select column for kanban-style views
Reference linked pages as row attachments
Step 5

Note: AFFiNE's database views are still evolving. For advanced relational databases with rollups and relations, consider pairing with a dedicated tool or waiting for the AFFiNE database v2 release.

📋 Daily Flow (10 Minutes Total)

Morning (3 min): Open your AFFiNE dashboard page → review today's tasks from your database → pick top 3 priorities.

During day: Capture ideas quickly — create a new doc or jot on a whiteboard. AFFiNE syncs instantly via your self-hosted server.

Evening (5 min): Process inbox → update database rows → check off completed items on your whiteboard → tag tomorrow's focus.

Sunday (15 min): Review all docs and whiteboards → archive stale pages → plan next week's structure.

Want the Complete Workspace?

AFFiNE is free and open-source. Deploy it yourself via Docker, or use their cloud-hosted version at affine.pro. No licenses, no subscriptions — your data, your server.

Deploy AFFiNE — affine.pro

Or explore other open-source tools in the Atomic Productivity library.