Files
kolaente 9b97f48b55 fix: keep created_by out of task writes, and keep the task on a label failure
address pr-swarm findings: created_by went back into the payload last round on
the theory that v1 echoes it. It does not - updateSingleTask overwrites the task
it returns with a fresh read, and CreatedBy is not a column, so what the client
sends is discarded either way. Sending it was dead weight on every v1 write.

createNewTask kept the bug its plural sibling just lost: a failing label write
threw away a task that already existed. Kanban, quick actions and related tasks
all go through it.

Claude-Session: https://claude.ai/code/session_01GR9u1EFvq994jqGoeJqYSX
2026-07-30 01:29:06 +02:00
..
2026-06-29 08:15:34 +02:00

Web frontend for Vikunja

The todo app to organize your life.

License: AGPL-3.0-or-later Translation

This is the web frontend for Vikunja, written in Vue.js.

Take a look at our roadmap (hosted on Vikunja!) for a list of things we're currently working on!

For general information about the project, refer to the top-level readme of this repo.

Project setup

pnpm install

Development

Define backend server

You can develop the web front end against any accessible backend, including the demo at https://try.vikunja.io

In order to do so, you need to set the DEV_PROXY env variable. The recommended way to do so is to:

  • Copy .env.local.example as .env.local
  • Uncomment the DEV_PROXY line
  • Set the backend url you want to use

In the end, it should look like DEV_PROXY=https://try.vikunja.io if you work against the online demo backend.

Start dev server (compiles and hot-reloads)

pnpm run dev

Compiles and minifies for production

pnpm run build

Lints and fixes files

pnpm run lint

License

This project is licensed under the AGPL-3.0-or-later license. See the LICENSE file for details.