Vikunja vs WeKan: Self-Hosted Task Management Compared

Quick Verdict

Want a Trello replacement with Kanban boards and nothing else? WeKan is the most feature-complete open-source Kanban board available. Need task management that goes beyond Kanban — with lists, Gantt charts, CalDAV sync, and a Todoist-like experience? Vikunja covers more ground in a lighter package. If your workflow is board-centric, WeKan is the right tool. If you need flexible task views, Vikunja wins.

Updated March 2026: Verified with latest Docker images and configurations.

Overview

Vikunja is a Go-based task management application that positions itself as an open-source alternative to Todoist, Wunderlist, and Trello combined. It supports multiple task views (list, Kanban, Gantt, table), CalDAV integration for syncing with calendar apps, file attachments, labels, due dates, reminders, and team collaboration. The project launched in 2018 and has steady development with regular releases.

WeKan (formerly LibreBoard) is a dedicated Kanban board application inspired by Trello. It focuses specifically on the Kanban methodology: boards, lists, cards, swimlanes, checklists, and WIP limits. Built with Meteor.js and MongoDB, it’s one of the oldest and most feature-rich open-source Kanban solutions, running since 2015.

Feature Comparison

FeatureVikunja v1.1.0WeKan v8.35
Task viewsList, Kanban, Gantt, TableKanban only
Kanban boardsYesYes (primary focus)
SwimlanesNoYes
WIP limitsNoYes (per-list card limits)
Card templatesNoYes
CalDAV syncYes (native)No
Gantt chartYesNo
Due dates & remindersYes (with CalDAV push)Yes (basic)
Recurring tasksYesYes
File attachmentsYesYes
Labels / tagsYes (color-coded)Yes (color-coded)
CommentsYes (with mentions)Yes
ChecklistsYes (subtasks)Yes (per-card checklists)
Time trackingYes (built-in)No
Global searchYes (full-text)Yes
APIREST APIREST API
WebhooksYesYes
OIDC / SSOYesYes (OIDC, LDAP, SAML)
Mobile appsProgressive Web AppProgressive Web App
DatabasePostgreSQL, MySQL, SQLiteMongoDB (required)
Backend languageGoMeteor.js (Node.js)
LicenseAGPL-3.0MIT

Installation Complexity

Vikunja uses a single Go binary with PostgreSQL (or SQLite for testing):

services:
  vikunja:
    image: vikunja/vikunja:v2.1.0
    environment:
      VIKUNJA_DATABASE_HOST: db
      VIKUNJA_DATABASE_PASSWORD: CHANGE_ME_DB_PASSWORD
      VIKUNJA_DATABASE_TYPE: postgres
      VIKUNJA_DATABASE_USER: vikunja
      VIKUNJA_DATABASE_DATABASE: vikunja
      VIKUNJA_SERVICE_PUBLICURL: https://tasks.example.com
      VIKUNJA_SERVICE_JWTSECRET: CHANGE_ME_RANDOM_SECRET_32_CHARS
    volumes:
      - vikunja_files:/app/vikunja/files
    ports:
      - "3456:3456"
    depends_on:
      - db
    restart: unless-stopped

  db:
    image: postgres:16-alpine
    environment:
      POSTGRES_USER: vikunja
      POSTGRES_PASSWORD: CHANGE_ME_DB_PASSWORD
      POSTGRES_DB: vikunja
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: unless-stopped

volumes:
  vikunja_files:
  pgdata:

Two containers. Environment variable configuration. First user to register becomes admin (or configure VIKUNJA_SERVICE_ENABLEREGISTRATION=false after creating your account). Straightforward.

WeKan requires MongoDB, which adds operational complexity:

services:
  wekan-db:
    image: mongo:7
    volumes:
      - wekan_db:/data/db
      - wekan_dump:/dump
    restart: unless-stopped

  wekan-app:
    image: ghcr.io/wekan/wekan:v8.35
    environment:
      WRITABLE_PATH: /data
      MONGO_URL: mongodb://wekan-db:27017/wekan
      ROOT_URL: https://kanban.example.com
      MAIL_URL: smtp://mail.example.com:587
      MAIL_FROM: WeKan <[email protected]>
      WITH_API: "true"
      RICHER_CARD_COMMENT_EDITOR: "true"
      CARD_OPENED_WEBHOOK_ENABLED: "false"
      BIGEVENTS_PATTERN: NONE
      BROWSER_POLICY_ENABLED: "true"
    volumes:
      - wekan_files:/data
    ports:
      - "8080:8080"
    depends_on:
      - wekan-db
    restart: unless-stopped

volumes:
  wekan_db:
  wekan_dump:
  wekan_files:

WeKan has dozens of environment variables for fine-tuning (the official compose file lists 50+), though most are optional. MongoDB is the only supported database — no SQLite fallback for simple setups. First user to register gets admin rights.

Performance and Resource Usage

ResourceVikunja v1.1.0WeKan v8.35
RAM (idle)50-100 MB200-400 MB
RAM (active, 10 users)100-200 MB400-600 MB
CPUMinimal (Go binary)Low-medium (Node.js/Meteor)
Database RAMPostgreSQL: 100-200 MBMongoDB: 200-400 MB
Total RAM (stack)200-400 MB400-800 MB
Disk (application)30 MB200 MB
Containers22

Vikunja’s Go binary is significantly lighter than WeKan’s Meteor.js runtime. With PostgreSQL, the total stack uses roughly half the RAM of WeKan with MongoDB. On constrained hardware (Raspberry Pi, small VPS), this difference matters.

Community and Support

Vikunja has 4,000+ Gitea stars (vikunja.io/gitea) and a growing community. The lead developer (kolaente) maintains regular releases and responsive issue tracking. Documentation is comprehensive at vikunja.io/docs. The project accepts donations via OpenCollective.

WeKan has 20,000+ GitHub stars — one of the most starred open-source project management tools. The maintainer (xet7) is prolific, pushing updates frequently (sometimes daily). Documentation is extensive, covering dozens of integrations and deployment scenarios. WeKan benefits from years of production use across organizations.

Use Cases

Choose Vikunja If…

  • You need multiple task views (list, Kanban, Gantt, table) not just Kanban
  • CalDAV sync matters (sync tasks to your phone’s calendar/tasks app)
  • You want a Todoist/Wunderlist replacement with list-based task management
  • Resource efficiency is important (Go binary, ~200 MB total RAM)
  • You prefer PostgreSQL (or SQLite) over MongoDB
  • Built-in time tracking is useful for your workflow

Choose WeKan If…

  • Kanban boards are your primary workflow (swimlanes, WIP limits, card templates)
  • You’re replacing Trello specifically and want a 1:1 feature match
  • Your team’s workflow is visual and board-centric
  • You need advanced Kanban features like swimlanes and card aging
  • LDAP/SAML SSO is a hard requirement (WeKan has more mature SSO)
  • You don’t need task lists, Gantt charts, or calendar sync

Final Verdict

If your team thinks in Kanban boards — cards moving across columns, swimlanes separating workstreams, WIP limits enforcing flow — WeKan is the more complete Kanban tool with features like swimlanes and card templates that Vikunja lacks.

If you want flexible task management that adapts to different workflows — sometimes a list, sometimes a board, sometimes a Gantt chart — Vikunja delivers more versatility in a lighter package. Its CalDAV support alone makes it the better personal task manager, syncing seamlessly with iOS Reminders, GNOME To Do, and Thunderbird.

For most self-hosters replacing a cloud service: Vikunja replaces Todoist. WeKan replaces Trello. Pick whichever matches the tool you’re migrating from.

FAQ

Can Vikunja do everything WeKan does with Kanban boards?

No. Vikunja has a Kanban view, but it lacks swimlanes, WIP limits, card templates, and card aging — features dedicated Kanban practitioners consider essential. If Kanban is your primary methodology, WeKan’s implementation is deeper.

Does WeKan support list views like Todoist?

No. WeKan is exclusively a Kanban board tool. Every task must exist as a card on a board. There’s no flat list view, table view, or Gantt chart. If you need non-Kanban views, Vikunja is the better fit.

Can I sync Vikunja tasks with my phone?

Yes. Vikunja’s CalDAV support lets you sync tasks with any CalDAV-compatible app: iOS Reminders, GNOME To Do, Tasks.org (Android), Thunderbird, and others. Tasks appear as calendar items with due dates and reminders. WeKan has no equivalent — you’d need to use its web UI or API.

Which is easier to back up?

Vikunja with PostgreSQL is straightforward: pg_dump the database and copy the files volume. WeKan with MongoDB uses mongodump — functional but MongoDB backups are more operationally complex, especially for point-in-time recovery.

Can I import data from Trello into either?

WeKan has a direct Trello JSON import feature. Vikunja can import from Todoist, Microsoft To Do, and Vikunja JSON exports, but Trello import requires converting the Trello JSON export first. For Trello migrations specifically, WeKan is simpler.

Comments