LibrePortal
Sponsor
Install

Vikunja

Tasks & Project Management

Vikunja keeps your to-do lists and projects, as simple lists, kanban boards, tables or a timeline. It's for the shopping list and the house move alike, on your own server.

On this page
  1. At a glance
  2. What it's good for
  3. Signing in
  4. Adding your household
  5. Everyday use
  6. On your phone
  7. Good to know
  8. What the install asks
  9. Addresses and ports
  10. Settings
  11. In its config file
  12. Works with
  13. Privacy and security
  14. What leaves this server
  15. What LibrePortal turns off
  16. Sources
  17. Under the hood

At a glance#

What it is
Tasks & Project Management Productivity
Where it opens
Web Interface On its own port at http://your-server:port, or tasks.your-domain once you have a domain
Updates
Automatic A backup is taken first, and it rolls back if the update fails
Backups
Included Part of the daily backup when that's switched on
Copies
As many as you like Run several copies, each with its own data

What it's good for#

Vikunja is a to-do app that grows with what you throw at it. A shopping list is a project with a few tasks. Redecorating the living room is a project with due dates, labels and a kanban board of "to buy", "in progress" and "done". A work plan can be a table or a timeline. You switch between those views of the same tasks whenever you like.

Tasks can have due dates, reminders, priorities, labels, attachments and sub-tasks, and projects can be shared with other people on your Vikunja, so a household can keep one shared list.

Signing in#

Vikunja has no admin account and no setup page: every account is an ordinary one. Left to itself, Vikunja lets anyone who can open its page sign up, which on a server others can reach means strangers making accounts and uploading files. So LibrePortal switches sign-ups off, and makes your account while installing.

The account is called admin. Its password is in the Login Details shown when the install finishes; press Welcome on the app's page to see it again. Open Vikunja with the Web Interface button and sign in. If you change the password inside Vikunja, LibrePortal's copy won't follow, so note the new one yourself.

Adding your household#

With sign-ups off, the simplest way to add people is to open them for a moment:

  1. Switch sign-ups on. On Vikunja's Config tab, switch Allow Sign-ups on and press Update Configuration.
  2. Have everyone register from the link on Vikunja's sign-in page.
  3. Switch them off again the same way, once everyone's in.

Each account only sees its own projects and what's shared with it, so nobody gets your tasks by registering. Vikunja starts public; unless you need it from outside, set it to private and use the VPN when you're out.

To check: check whether Vikunja itself can add users from its web page (vikunja.config says 'add people as users from inside Vikunja'); LibrePortal has no Tools for Vikunja, and upstream's documented way is the vikunja user create command

Installed with 0.4.6 or earlier?

Older installs have sign-ups open, and the update doesn't close them by itself. Press Update Configuration on the Config tab once: it sets Vikunja up again from LibrePortal's current version of it, with Allow Sign-ups off, and keeps your accounts and tasks. It doesn't make an admin account when Vikunja already has accounts, so keep signing in with your own. The Login Details may show an admin login on such an install, but that account was never made.

Everyday use#

Make a project for each area of your life, add tasks with the box at the top, and tick them off. Typing a task can set its details in one go; Vikunja's "quick add magic" understands things like *label, !3 for priority, and dates like "tomorrow" or "next Monday" in the title.

To share a project, open its Share option and add another user, or make a link that lets people see (or edit) it without an account.

On your phone#

Vikunja's web page works well on a phone, and you can add it to your home screen from the browser.

To see tasks in a phone's own task app, Vikunja speaks CalDAV. On Android, DAVx⁵ with Tasks.org or OpenTasks works: add a CalDAV account at your Vikunja address with /dav/principals/<your username>/ on the end, and sign in with your Vikunja username and password. Vikunja itself calls this support early and a bit rough, and says Thunderbird and iOS don't work with it yet.

Good to know#

  • Its web address is fixed at install. Vikunja is told its own address when it's installed (tasks.example.com with a domain, your server's address and port without), and uses it in the links it makes. If you add a domain later, press Update Configuration on its Config tab so it learns the new one.
  • Email isn't set up, so Vikunja can't send reminder or "forgot password" emails.
  • Backups include its database and attachments.
  • Updates are automatic.
  • More than one copy is possible, each with its own accounts.

What the install asks#

When you install Vikunja, LibrePortal asks for a little more than usual before it starts:

  • Quick settings

Addresses and ports#

Vikunja has one port. LibrePortal picks a free port number for each when you install, so yours will differ from anyone else's. The Config tab's Network section shows them, and the app's Open button uses the right one. "Anyone" means it's reachable from wherever your server is reachable; you can make it private later.

What it isWho can reach itWith a domain
Web Interface Anyone tasks.your-domain

Settings#

These are Vikunja's own settings on its Config tab. The settings every app shares, like backups, updates and where its data lives, are explained in App pages and settings.

SettingWhat it doesStarts as
Open Sign-ups Let anyone who can open the page make their own account. Off: you add people from inside Vikunja. Off

In its config file#

A few more aren't on the Config tab yet. They live in the app's config file, described here so you know they exist. How to change them.

SettingWhat it doesStarts as
Name
CFG_VIKUNJA_DISPLAY_NAME
What this app is called on your dashboards. Leave empty to use its usual name Empty
Show on the LibrePortal Dashboard
CFG_VIKUNJA_SHOW_ON_DASHBOARD
Whether this app gets a shortcut on the front page of the LibrePortal WebUI, separate from any Dashy dashboard
Choices: true, false
true
Error reports
CFG_VIKUNJA_TELEMETRY
Whether Vikunja may send error reports about this server and its web page to Sentry
Choices: true, false
false
Detailed logs
CFG_VIKUNJA_VERBOSE_LOGS
Whether Vikunja writes its normal, chattier logs, including who connected, instead of only warnings and errors.
Choices: true, false
false
Debug logging for 24 hours
CFG_VIKUNJA_DEBUG_LOGS
Turn on to see everything Vikunja is doing while you look for a problem; it turns itself off after 24 hours.
Choices: true, false
false

Works with#

These are the other apps Vikunja knows how to work with. Once it's installed, its page shows the same list with whether each one is connected. How this works.

  • Email: Sends reminders, password resets and task notifications through your mail server, from an account of its own. LibrePortal sets this up by itself when both are installed.
  • Grafana: Shows dashboards for the apps that have one. works with every app
  • Prometheus: Collects metrics from the apps that can export them. works with every app
  • Uptime Kuma: Watches your apps and shows when one goes down. works with every app

Privacy and security#

All clear Vikunja is your task manager and keeps everything on your server. It sends nothing out unless a person picks Gravatar profile pictures.

What leaves this server#

  • Gravatar, only if a person chooses it as their avatar
  • Email reminders use the mail server you choose

What LibrePortal turns off#

  • Detailed logs and per-request access logging (switchable in Config)
  • Error reporting to the maker's Sentry (switchable in Config)

Licence: AGPL-3.0. Audited: 21 October 2026. See the privacy of every app and the Promise.

Sources#

Under the hood#

  • It runs this image: vikunja/vikunja:2.7.1@sha256:f7dc8428d10aef17f3075886d3c1c022f566ec456f88985f02c137f4fc534576.
  • It can sit behind Authelia's sign-in once Authelia is installed.
  • Its own project and documentation: vikunja.io

Ports, settings, tools and connections on this page are read from LibrePortal v0.10.97's app catalogue each time the guide is built.

Next steps