Self-Host Vikunja with Greffon
Your to-do list knows your whole life: work, health, the people you owe a reply. That is a quiet reason to keep it on a box you own. Here is the honest setup for Vikunja on a greffer.
A task manager ends up holding more than tasks. It has your deadlines, the names of people you are dealing with, the shape of every project you are in the middle of. That is a fairly complete picture of your life to hand to a service you rent. Vikunja is a self-hosted to-do and project management app, and grafting it onto a greffer keeps that picture on hardware you own. Greffon takes the fiddly parts off your plate.
Why own your task list
Vikunja covers the things you would expect from a modern task app: lists, Kanban boards, a calendar and Gantt view, labels, sub-tasks, reminders, and sharing. It is a single, modest service that runs comfortably on a small greffer. Owning it means the data lives on your machine, and there is no plan tier deciding how many projects you are allowed to keep.
Graft it from the catalog
On a greffer you do not hand-write a compose file or wire a reverse proxy. Pick Vikunja from the catalog and graft it onto your greffer. Greffon issues the certificate and routes the app, so it comes up reachable over HTTPS from the first start. The signing secret that Vikunja uses for auth tokens is generated for you at instance creation, so there is nothing to paste in by hand.
Reach it from anywhere
A task list is only useful if you can reach it from your phone, your laptop, and the browser you actually live in. On the same network as your greffer that works the moment it starts. To reach it from anywhere else, you have two honest options.
The simplest is tunnel mode: a greffer connects outbound to the manager's tunnel and serves its apps without opening a single inbound port, which is the answer for a box behind NAT or CGNAT with no public IP. Vikunja is a plain HTTP app, so the tunnel carries it without a catch. If you would rather expose the greffer directly, port forwarding plus dynamic DNS still works. Either way the app stays reachable over HTTPS.
Reminders need email
Reminders, task assignment notices, and email-based password reset only work if Vikunja can send mail. This is the part that is easy to skip and then wonder why no notifications arrive. Vikunja takes its mail settings from SMTP, and Greffon wires those through when you configure mail on the instance, so you point it at an SMTP relay you already use rather than running your own mail server.
Storage and backups
Vikunja is light. By default it keeps its data in a single file-backed database plus an attachments folder, so it does not need much memory or disk to run. That same simplicity is what makes the backup story straightforward: there is a clear set of files to copy, and losing them means losing every task and attachment at once.
Greffon handles TLS and routing today, and native one-click backups are coming in M2. Until then, bring your own backup tool (restic or borgbackup are the usual choices), back up the Vikunja data on a schedule, and keep a copy off the greffer.
Keep it always-on
A task list you check first thing in the morning and last thing at night has to be up when you are. Run it on an always-on greffer, a small VPS, a mini-PC, or a free Oracle Cloud box, rather than a laptop that sleeps. The Oracle walkthrough is a good place to get a greffer running before you graft Vikunja onto it.