Find a file
2018-11-19 11:37:59 +00:00
docker/etc/services.d Added swaggerfiles do dockerfile 2018-09-08 16:54:21 +02:00
docs Added validation for structs (#19) 2018-11-16 23:17:37 +00:00
pkg Added Shared lists overview in namespaces (#21) 2018-11-19 11:37:59 +00:00
public/swagger Add password reset (#3) 2018-10-27 09:33:28 +00:00
REST-Tests Added validation for structs (#19) 2018-11-16 23:17:37 +00:00
templates/mail Add user email verification when registering (#5) 2018-10-27 13:14:55 +00:00
vendor Added validation for structs (#19) 2018-11-16 23:17:37 +00:00
.drone.yml Migrate to new swagger docs generation (#18) 2018-11-12 15:46:35 +00:00
.gitignore Added a route to get all tasks sorted desc by their due dates (#14) 2018-11-02 16:59:49 +00:00
config.yml.sample Added pagination (#16) 2018-11-09 10:30:17 +00:00
Dockerfile Fixed no root path for templates and static assets (#12) 2018-11-02 10:01:28 +00:00
Featurecreep.md Added Shared lists overview in namespaces (#21) 2018-11-19 11:37:59 +00:00
go.mod Added validation for structs (#19) 2018-11-16 23:17:37 +00:00
go.sum Added validation for structs (#19) 2018-11-16 23:17:37 +00:00
LICENSE initial commit 2018-06-10 11:11:42 +02:00
main.go Migrate to new swagger docs generation (#18) 2018-11-12 15:46:35 +00:00
Makefile Migrate to new swagger docs generation (#18) 2018-11-12 15:46:35 +00:00
README.md updated readme 2018-11-17 00:29:10 +01:00
tools.go Migrate to new swagger docs generation (#18) 2018-11-12 15:46:35 +00:00

Vikunja API

The Todo-app to organize your life.

Build Status License: LGPL v3 Download Docker Pulls Swagger Docs Go Report Card

Features

  • Create TODO lists with tasks
    • Reminder for tasks
  • Namespaces: A "group" which bundels multiple lists
  • Share lists and namespaces with teams and users with granular permissions

Try it under try.vikunja.io!

Roadmap

I know, it's still a long way to go. I'm currently working on a lot of "basic" features, the exiting things will come later. Don't worry, they'll come.

  • Labels for todo lists and tasks

  • Prioritize tasks

  • Assign users to tasks

  • Subtasks

  • Repeating tasks

  • Attachments on tasks

  • Get all tasks for you per interval (day/month/period)

  • Get tasks via caldav

  • More sharing features

    • Share with individual users
    • Share via a world-readable link with or without password, like Nextcloud
  • Mobile apps (seperate repo)

  • Webapp (seperate repo)

Development

We use go modules to vendor libraries for Vikunja, so you'll need at least go 1.11.

To contribute to Vikunja, fork the project and work on the master branch.

Some internal packages are referenced using their respective package URL. This can become problematic. To “trick” the Go tool into thinking this is a clone from the official repository, download the source code into $GOPATH/code.vikunja.io/api. Fork the Vikunja repository, it should then be possible to switch the source directory on the command line.

cd $GOPATH/src/code.vikunja.io/api

To be able to create pull requests, the forked repository should be added as a remote to the Vikunja sources, otherwise changes cant be pushed.

git remote rename origin upstream
git remote add origin git@git.kolaente.de:<USERNAME>/api.git
git fetch --all --prune

This should provide a working development environment for Vikunja. Take a look at the Makefile to get an overview about the available tasks. The most common tasks should be make test which will start our test environment and make build which will build a vikunja binary into the working directory. Writing test cases is not mandatory to contribute, but it is highly encouraged and helps developers sleep at night.

Thats it! You are ready to hack on Vikunja. Test changes, push them to the repository, and open a pull request.