SELF-HOSTING

Colanode: Your Open-Source, Local-First Alternative to Slack and Notion

Imagine a world where your team communications, notes, databases, and files all live in one unified platform—and more importantly, where you control all that data. No vendor lock-in. No surveillance capitalism. No surprise pricing changes when your team grows. No panic when a startup goes out of business and takes your data with it.

If that vision resonates with you, then Colanode deserves your attention.

In recent years, we’ve collectively accepted a troubling trade-off: convenience in exchange for control. We adopted Slack for team chat, Notion for shared knowledge, Google Drive for files, and Airtable for databases—each creating siloed data islands that don’t talk to each other. Meanwhile, our sensitive conversations and proprietary information live on servers controlled by companies with their own incentives and vulnerabilities. A data breach here, a business pivot there, and suddenly your organization’s institutional knowledge vanishes or becomes inaccessible.

Colanode is an open-source, local-first collaboration platform that shatters this false choice. Built by developer Hakan Shehu and inspired by frustrations with Notion and Slack’s limitations, Colanode combines the best features of Slack-style chat, Notion-style documentation, customizable databases like Airtable, and file management—all in one self-hostable application where your data never leaves your control.

This comprehensive guide will walk you through everything you need to know about Colanode: what makes it different, how to install it, practical usage examples, and why thousands of tech-savvy teams are making the switch.

Why Colanode? The Case for Open-Source, Local-First Collaboration

Before diving into the how, let’s explore the why—because understanding Colanode’s philosophy is crucial to appreciating why it matters.

The Problems with Traditional Collaboration Tools

  • Data Lock-in: Slack and Notion are intentionally difficult to leave. Exporting your data is cumbersome, and the format often requires paid apps to parse. You’re locked in not by technical necessity but by design.
  • Privacy and Sovereignty: Your conversations and proprietary information live on servers you don’t control, subject to data breaches, legal requests, and terms of service that can change overnight. If you work in healthcare, finance, or government, this becomes a compliance nightmare.
  • Fragmentation: Your team uses four different SaaS tools because no single one does everything well. Context gets lost between applications. Simple tasks require integrations that frequently break. You’re paying for the sum of monthly subscriptions that adds up to thousands of dollars annually.
  • Offline Fragility: When your internet drops, most modern collaboration tools become useless. You’re stuck until connectivity returns. This is increasingly problematic for remote teams, traveling employees, and anyone in areas with unreliable internet.
  • Vendor Lock-in and Obsolescence: Remember Google Workspace, Quip, or Basecamp Wave? Companies pivot, get acquired, shut down services, or fundamentally change their business model. Your data—and sometimes entire workflows—evaporate overnight.

How Colanode Solves These Problems

  • Local-First Architecture: Every change you make is first saved to a local SQLite database on your device, then synced to the server in the background. This means you can keep working offline without interruption, and data reads happen instantly—no loading spinners, no “waiting for the server” delays.
  • Complete Data Ownership: You self-host Colanode on your own servers or infrastructure you control. Your data never touches Colanode’s servers (or you run your own server). You decide where data lives, who can access it, and how long to retain it. This is revolutionary for regulated industries.
  • Open-Source: Colanode is released under the Apache 2.0 license, meaning you can inspect the code, modify it, extend it, and fork it if needed. No proprietary black boxes. No vendor lock-in because the code is available to anyone.
  • Unified Workspace: Chat, documents, databases, files, and knowledge management all in one application. No context-switching between apps. Information naturally stays connected because it lives in the same system.
  • Real-Time Collaboration: Multiple team members can edit documents and databases simultaneously using Conflict-free Replicated Data Types (CRDTs) powered by Yjs. Changes merge gracefully without conflicts or lost work.
  • No Vendor Lock-in: Run Colanode today, host it yourself tomorrow, or export your data and run a fork next year. The choice remains yours.

Key Capabilities at a Glance

  • Real-Time Chat: Instant messaging for individuals or channels, all indexed and searchable​
  • Rich Documents: Create wikis, notes, and documentation with an intuitive Notion-like editor
  • Custom Databases: Structure information with custom fields and dynamic views (table, kanban, calendar)
  • File Management: Store, share, and manage files with granular permission controls
  • Offline Support: Work without internet and sync changes when connectivity returns
  • Concurrency: Multiple people editing simultaneously without conflicts thanks to CRDTs
  • Multi-Device Access: Same account connecting to multiple servers and workspaces
  • Extensibility: Built with a minimal stack (Node.js, TypeScript) specifically to avoid vendor lock-in

Understanding Colanode’s Architecture

Before installing Colanode, understanding its architecture helps you appreciate its design decisions and plan your deployment.

Client-Server Model

Colanode consists of three components:

  • Server: The Node.js API backend that handles data synchronization, storage, and collaboration. You self-host this using Docker, Kubernetes, or traditional deployment methods.
  • Web Client: A browser-based interface for accessing Colanode from any device. Currently in early preview, perfect for quick access without installation.
  • Desktop Client: An Electron application providing the optimal experience with offline support and desktop integration. This is the recommended interface for active users.

Technology Stack

Colanode deliberately uses only open-source, well-established technologies to avoid vendor lock-in:

  • Database: PostgreSQL (with pgvector extension for future AI features) for server-side data persistence, SQLite on the client for local storage
  • Real-Time Sync: Yjs CRDT library for conflict-free collaboration, with custom synchronization engine on top
  • Message Queue: Redis (or compatible services like Valkey) for pub/sub and caching
  • Storage: S3-compatible backends (Minio, AWS S3, Google Cloud Storage, Azure Blob Storage) for file management, with optional local filesystem storage
  • Runtime: Node.js and TypeScript for both server and clients​

The philosophy is clear: use open-source components that have multiple implementations, avoiding single-vendor dependencies.

Installation Guide: Getting Colanode Running

You have three ways to start using Colanode:

  1. Colanode Cloud (Free Beta): Use the hosted version with cloud servers in EU or US
  2. Web App (Early Preview): Browser-based access at app.colanode.com
  3. Self-Host: Full control with your own server infrastructure

Option 1: Quick Start with Colanode Cloud (Easiest)

For trying Colanode without any installation:

Step 1: Download the App

Step 2: Register and Connect

  1. Launch the app and click “Register”
  2. Create your account with email and password
  3. Select either Colanode Cloud (EU) or Colanode Cloud (US) as your server
  4. Create your workspace and start collaborating

Advantages:

  • Zero setup required
  • Perfect for testing features
  • Works immediately

Limitations:

  • Data lives on Colanode’s servers (beta, free for now)
  • Limited customization
  • Pricing model TBD

Option 2: Self-Host with Docker Compose (Recommended)

This is the preferred method for small teams and individuals wanting full control.

Prerequisites

  • Docker and Docker Compose installed on your system
  • Basic command-line knowledge
  • 2+ CPU cores and 4GB+ RAM minimum recommended
  • Domain name (optional but recommended for production)

Step 1: Clone the Repository

# Clone Colanode repository
git clone https://github.com/colanode/colanode.git
cd colanode

# Verify you have the latest code
git pull origin main

Step 2: Start Dependencies with Docker Compose

From the project root directory:

# Start PostgreSQL, Redis, and Mail server
docker compose -f hosting/docker/docker-compose.yaml up -d

# Verify services are running
docker compose ps

You should see three services running:

  • postgres (database)
  • redis (cache/message queue)
  • mailhog (email testing server)

Step 3: Configure Environment Variables

Navigate to the server directory and configure the environment:

cd apps/server

# Copy example environment file
cp .env.example .env

# Edit .env with your text editor to configure:
# - DATABASE_URL (PostgreSQL connection)
# - REDIS_URL (Redis connection)
# - SECRET_KEY (generate a random string)
# - STORAGE_TYPE (local filesystem or S3)
nano .env

Key variables to configure:

# Database
DATABASE_URL=postgresql://colanode:password@localhost:5432/colanode

# Redis
REDIS_URL=redis://localhost:6379

# Security
SECRET_KEY=your-random-secret-key-here

# Storage (local filesystem for simplicity)
STORAGE_TYPE=local
STORAGE_LOCAL_PATH=./data/files

# Server
PORT=3000
NODE_ENV=development

Step 4: Start the Colanode Server

# Install dependencies
npm install

# Run the development server
npm run dev

# Or run in production mode
npm run build
npm run start

The server should start on http://localhost:3000 and display:

Server is running at http://localhost:3000

Step 5: Start the Web Client

In a new terminal window:

cd apps/web

# Install dependencies
npm install

# Start development server
npm run dev

# Access at http://localhost:5173 by default

Step 6: Connect and Register

  1. Open your browser to http://localhost:5173 (or whatever port the web client outputs)
  2. Click Add new server
  3. Enter your server configuration URL (displayed at http://localhost:3000/config)
  4. Click Register and create your account
  5. Create a workspace and start collaborating!

Option 3: Self-Host with Kubernetes (Production)

For enterprise deployments requiring scalability:

# Navigate to Kubernetes deployment folder
cd hosting/kubernetes

# Install using Helm
helm install colanode ./colanode-chart \
  --namespace colanode \
  --create-namespace

# Verify deployment
kubectl get pods -n colanode

The Kubernetes setup handles all scaling, updates, and high availability automatically.colanode

Troubleshooting Installation Issues

Issue: PostgreSQL connection fails

# Verify PostgreSQL is running
docker ps | grep postgres

# Check PostgreSQL logs
docker logs colanode-postgres-1

# Reset PostgreSQL (warning: deletes all data)
docker compose down -v
docker compose up -d postgres

Issue: Redis connection errors

# Verify Redis is running and accessible
redis-cli ping
# Should output: PONG

# If not installed, install redis-cli:
# macOS: brew install redis
# Ubuntu: sudo apt-get install redis-tools

Issue: Port already in use (3000, 5173, etc.)

# Find what's using the port
lsof -i :3000

# Kill the process
kill -9 <PID>

# Or use different ports in .env
PORT=3001

Issue: Out of disk space

# Check available space
df -h

# Clean up Docker
docker system prune -a

# Remove old data
rm -rf hosting/docker/data/postgres

Getting Started: Using Colanode

After installation, here’s how to use Colanode’s core features.

Creating Your Workspace

Step 1: Register Account

  • Email and password
  • Workspace name (e.g., “My Team”, “Project Alpha”)
  • Workspace description (optional)

Step 2: Invite Team Members

  1. In the workspace, navigate to Settings → Members
  2. Click Invite Member
  3. Enter their email
  4. Assign role: Owner, Admin, Editor, or Viewer
  5. Send invite—they’ll receive email to join

Chat and Messaging

Create a Channel:

  1. Click + NewChannel
  2. Name it (e.g., #announcements, #random)
  3. Choose visibility: Private or Public
  4. Start messaging

Direct Messages:

  • Click a team member’s name
  • Start one-on-one conversation
  • Same features as channels (threads, reactions, file sharing)

Features:

  • @mentions to grab attention
  • Threads for organized discussions
  • Reactions (emojis) for quick feedback
  • Search across all messages
  • Offline support – messages sync when reconnected

Documents and Knowledge Base

Create a Document:

  1. Click + NewPage
  2. Name your page
  3. Use rich text editor to write content
  4. Format with bold, italics, lists, headings
  5. Embed images, links, and code blocks

Document Features:

  • Real-time collaboration: Multiple people edit simultaneously
  • Version history: Track all changes (coming soon)
  • Templates: Create reusable document templates
  • Nested pages: Organize knowledge hierarchically
  • Rich editing: Tables, code blocks, embeds, attachments

Customizable Databases

Create a Database:

  1. Click + NewDatabase
  2. Choose template: Empty, Project Board, Task List, etc.
  3. Define fields: Text, Number, Date, Select, Multiselect, etc.

Database Views:

  • Table: Traditional spreadsheet view
  • Kanban: Card-based workflow (perfect for project management)
  • Calendar: View by dates
  • Gallery: Visual preview of records

Example: Project Management Board

Database: Project Tasks
Fields:
- Title (text)
- Status (select: Todo, In Progress, Done)
- Priority (select: Low, Medium, High)
- Due Date (date)
- Assignee (person)
- Description (rich text)

Views:
- Table: All tasks with filtering
- Kanban: Tasks organized by Status
- Calendar: Tasks by Due Date

File Management

Upload Files:

  1. Click + NewFile
  2. Drag and drop or select files
  3. Files are stored locally on your server
  4. Share with specific team members or entire workspace

Features:

  • Inline previews for common formats
  • Version history (track changes)
  • Access control (permissions per file)
  • Search by filename
  • Offline access (files cached locally)

Example Workflow: Setting Up a Team Wiki

Let’s create a simple team wiki using Colanode:

Step 1: Create Main Page

  • New Page: “Team Wiki”
  • Add sections: About, Guidelines, Resources, Onboarding

Step 2: Create Nested Pages

Team Wiki/
├── About/
│ ├── Company Mission
│ ├── Team Members
│ └── History
├── Guidelines/
│ ├── Code Standards
│ ├── Communication Norms
│ └── Meeting Schedule
├── Resources/
│ ├── Tools & Services
│ ├── Documentation Links
│ └── Learning Materials
└── Onboarding/
├── First Day Checklist
├── System Access
└── Key Contacts

Step 3: Share with Team

  1. Go to page Settings
  2. Invite team members with “Viewer” access
  3. Set permissions: Who can edit, comment, etc.

Step 4: Link from Chat

In #announcements channel:

📚 Welcome to our Team Wiki!
Check out our documentation at: [link to wiki page]

Start with the Onboarding section if you're new.

Exporting Your Data

One of Colanode’s key promises is data portability:

Export Options (coming soon):

  • Full workspace export as JSON/standardized format
  • Individual page export as Markdown or PDF
  • Database export as CSV

Currently, since Colanode uses PostgreSQL and SQLite, you can always directly access your data in standard database formats.

Understanding Colanode’s Local-First Model

Colanode’s local-first architecture is revolutionary and worth understanding deeply.

How Local-First Works

  • Write-First: When you send a message or edit a document, Colanode saves it to your local SQLite database immediately. The UI updates instantly without waiting for server confirmation.
  • Sync Later: In the background, a synchronization engine sends your changes to the server and fetches updates from other collaborators.
  • Read-First: When you view content, Colanode reads from your local database first. If the local data is out-of-date, it checks with the server for updates. Result: instant access to everything you have permissions to view.​
  • Offline-Friendly: No internet? No problem. You can keep working. When connectivity returns, changes sync automatically.

Conflict Resolution with CRDTs

When multiple people edit the same document simultaneously, traditional systems struggle with conflicts. Colanode uses Conflict-free Replicated Data Types (CRDTs)—specifically Yjs—to handle this elegantly:

Traditional Approach:

  • Person A edits line 5
  • Person B edits line 10
  • Collision! Server picks a “winner”
  • Someone’s changes get lost

CRDT Approach:

  • Both edits are recorded with unique identifiers
  • When syncing, both edits apply without conflict
  • Result: No data loss, both contributions preserved

This is why Colanode can support truly concurrent editing at scale.

Colanode vs. Slack, Notion, and Others

Let’s be objective about how Colanode compares to established tools:

FeatureColanodeSlackNotionSelf-Hosted Mattermost
Chat
Documents
Databases
File Storage
Self-Hosted
Open-Source✅ Apache 2.0
Local-First
Offline Access
CRDT Collab
CostFree (self-hosted)$6.67-12.50/user/month$8-25/month (team)Free (self-hosted)
Data Control✅ Complete❌ Locked in❌ Locked in✅ Complete

Colanode’s Advantages:

  • Only unified platform combining chat + docs + databases
  • True local-first architecture
  • Offline support built-in
  • No licensing costs (open-source)
  • Complete data ownership

Colanode’s Limitations:

  • Newer project, still in active development
  • Smaller ecosystem/integrations compared to Slack/Notion
  • Requires technical knowledge to self-host
  • Desktop client required for optimal experience
  • Mobile apps coming soon (not available yet)

Advanced: Self-Hosting Considerations

If you’re planning to self-host Colanode for a team, consider these production considerations:

Infrastructure Requirements

Minimum:

  • 2+ CPU cores
  • 4GB RAM
  • 50GB+ SSD storage
  • Basic Linux knowledge

Recommended for Teams:

  • 4+ CPU cores
  • 8-16GB RAM
  • 500GB+ SSD storage
  • Docker or Kubernetes experience

Hosting Options

VPS (Budget-Friendly):

  • DigitalOcean, Linode, Vultr
  • ~$15-50/month
  • Suitable for small teams (5-20 people)

Managed Container Services (More Reliable):

  • Railway.com ($7+ monthly base)
  • Render ($7+ monthly base)
  • AWS ECS (~$20+ monthly)

Kubernetes Clusters (Enterprise):

  • AWS EKS, Google GKE, Azure AKS
  • $30+ monthly + compute costs
  • Best for large organizations

Backup and Security

Regular Backups:

# Backup PostgreSQL
pg_dump -U colanode colanode > backup.sql

# Backup local files
tar -czf files-backup.tar.gz ./data/files

SSL/TLS Certificates:

# Use Let's Encrypt for free HTTPS
# nginx or Caddy can auto-renew certificates

Network Security:

  • Firewall: Only expose ports 80/443
  • VPN: Optional for additional security
  • Rate limiting: Protect against brute force attacks

Why Open-Source Matters: The Colanode Philosophy

Colanode’s creator, Hakan Shehu, designed the project with a clear manifesto—”The Colanode Way”—that guides all decisions:

  • No Vendor Lock-In: Everything uses open-source, well-established components. You’re never locked into a single provider.
  • Data Ownership: Your data stays on your hardware. No cloud dependence. No privacy concerns.
  • Open-Source Everything: Unlike some “open-source” projects with proprietary enterprise editions, Colanode releases everything under Apache 2.0. No feature discrimination. No artificial limitations.
  • Simplicity: The minimal tech stack makes it easy to operate, understand, extend, and fork if needed.
  • Designed for AI: The architecture prepares for future local LLMs integrated into Colanode, letting you use AI without sending data to external services.

This isn’t just marketing speak—these principles drive actual engineering decisions. Colanode deliberately adds components (like building its own sync engine) rather than add dependencies that create lock-in.

Conclusion: Collaboration on Your Terms

Colanode represents a fundamental shift in how we think about collaboration tools. Instead of accepting data lock-in and privacy compromises as the cost of convenience, Colanode proves you can have both convenience and control.

For individuals: Colanode is the perfect notebook that works offline and syncs seamlessly.

For small teams: A unified platform replacing Slack + Notion + Google Drive without monthly bills.

For enterprises: Self-hosted infrastructure giving complete data sovereignty and compliance.

For the privacy-conscious: Open-source guarantee that code does what it claims, nothing more.

The project is still young—mobile apps are coming, the ecosystem is growing, and features are being steadily added. But the foundation is solid, the philosophy is sound, and thousands of developers have already adopted it.​

The question isn’t whether Colanode will replace Slack and Notion. It’s whether you’re ready to take control of your data and experience collaboration on your own terms.

You may also like

Subscribe
Notify of
guest

0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments