konrad 2b5c9ae7a8 Authentication with OpenID Connect providers (#713)
Add config docs

Lint

Move provider-related stuff to separate file

Refactor getting auth providers

Fix tests

Fix user tests

Fix openid tests

Add swagger docs

Fix lint

Fix lint issues

Fix checking if the user already exists

Make sure to create a new namespace for new users

Docs

Add tests for openid

Remove unnessecary err check

Consistently return nil users if creating a new user failed

Move sending confirmation email to separate function

Better variable names

Move checks to separate functions

Refactor creating user into seperate file

Fix creating new local users

Test creating new users from different issuers

Generate a random username right away if no preferred username has been given

Add todo

Cache openid providers

Add getting int clientids

Fix migration

Move creating tokens to auth package

Add getting or creating a third party user

Add parsing claims

Add retreiving auth tokens

Add token callback from openid package

Add check for provider key

Add routes

Start adding openid auth handler

Add config for openid auth

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#713
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-11-21 16:38:58 +00:00
2020-09-03 21:59:17 +02:00
2020-10-19 20:35:23 +02:00
2020-10-20 20:29:57 +02:00
2020-06-22 20:54:38 +02:00
2020-09-03 18:08:26 +02:00
2018-11-26 20:17:33 +00:00
2020-10-19 07:58:24 +02:00
2020-02-07 17:27:45 +01:00
2020-11-20 21:54:15 +01:00
2020-09-22 22:25:23 +02:00
2020-09-03 15:13:19 +00:00

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

Vikunja API

The Todo-app to organize your life.

Table of contents

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
  • Plenty of details for tasks

See the features page on our website for a more exaustive list or try it on try.vikunja.io!

Docs

All docs can be found on the vikunja home page.

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.

  • Prioritize tasks
  • Subtasks
  • Repeating tasks
  • Get tasks via caldav
  • Get all your tasks for an interval (day/month/period)
  • Labels for tasks
  • Assign users to tasks
  • Attachments on tasks
  • More sharing features
    • Share with individual users
    • Share via a world-readable link with or without password, like Nextcloud
  • Disable registration, making an instance "invite-only"
  • SSE to notify multiple clients of updates when something was changed
  • "Smart Lists" - Create lists based on filters
  • IMAP-Integration - Send an email to Vikunja to create a new task
  • Webhooks - Trigger other events when an action is done (like completing a task)
  • Performace statistics - Get an overview and beautiful charts about what you got done this month
  • Activity feeds - Get a quick overview about who did what
  • Bulk-edit multiple tasks at once
  • Team-efforts - Requiring a task to be marked as done by multiple members until it's done
  • Global limits for namespaces/lists/tasks

See our roadmap (hosted on Vikunja!) for even more!

Contributing

Fork -> Push -> Pull-Request. Also see the dev docs for more infos.

License

This project is licensed under the GPLv3 License. See the LICENSE file for the full license text.

Description
The to-do app to organize your life.
Readme 715 MiB
Languages
Go 99.3%
Smarty 0.6%