2018-09-08 13:29:35 +02:00
service:
2018-09-08 13:50:05 +02:00
# This token is used to verify issued JWT tokens.
# Default is a random token which will be generated at each startup of vikunja.
# (This means all already issued tokens will be invalid once you restart vikunja)
2019-01-21 22:52:26 +01:00
JWTSecret: "<jwt-secret>"
2018-09-08 13:29:35 +02:00
# The interface on which to run the webserver
2018-09-08 13:50:05 +02:00
interface: ":3456"
2018-10-27 11:33:28 +02:00
# The URL of the frontend, used to send password reset emails.
frontendurl: ""
2018-12-18 17:01:46 +01:00
# The base path on the file system where the binary and assets are.
# Vikunja will also look in this path for a config file, so you could provide only this variable to point to a folder
# with a config file which will then be used.
2019-01-21 22:52:26 +01:00
rootpath: <rootpath>
2019-10-23 23:11:40 +02:00
# The max number of items which can be returned per page
maxitemsperpage: 50
2018-12-12 23:50:35 +01:00
# If set to true, enables a /metrics endpoint for prometheus to collect metrics about the system
# You'll need to use redis for this in order to enable common metrics over multiple nodes
2018-12-18 17:01:46 +01:00
enablemetrics: false
2019-05-22 19:48:48 +02:00
# Enable the caldav endpoint, see the docs for more details
enablecaldav: true
2019-12-25 17:27:10 +01:00
# Set the motd message, available from the /info endpoint
motd: ""
2019-08-31 22:56:41 +02:00
# Enable sharing of lists via a link
enablelinksharing: true
2019-12-31 00:27:02 +01:00
# Whether to let new users registering themselves or not
enableregistration: true
2020-01-26 20:10:31 +01:00
# Whether to enable task attachments or not
enabletaskattachments: true
2020-02-08 13:48:49 +01:00
# The time zone all timestamps are in
timezone: GMT
2020-02-19 22:57:56 +01:00
# Whether task comments should be enabled or not
enabletaskcomments: true
2018-09-08 13:29:35 +02:00
database:
2020-02-16 22:42:04 +01:00
# Database type to use. Supported types are mysql, postgres and sqlite.
2018-09-08 13:29:35 +02:00
type: "sqlite"
2018-09-08 13:50:05 +02:00
# Database user which is used to connect to the database.
user: "vikunja"
# Databse password
password: ""
# Databse host
host: "localhost"
# Databse to use
2018-09-08 13:29:35 +02:00
database: "vikunja"
# When using sqlite, this is the path where to store the data
Path: "./vikunja.db"
2020-02-16 22:42:04 +01:00
# Sets the max open connections to the database. Only used when using mysql and postgres.
2019-05-25 07:49:52 +02:00
maxopenconnections: 100
# Sets the maximum number of idle connections to the db.
maxidleconnections: 50
# The maximum lifetime of a single db connection in miliseconds.
maxconnectionlifetime: 10000
2020-02-16 22:42:04 +01:00
# Secure connection mode. Only used with postgres.
# (see https://pkg.go.dev/github.com/lib/pq?tab=doc#hdr-Connection_String_Parameters)
sslmode: disable
2018-12-12 23:50:35 +01:00
2018-12-18 17:01:46 +01:00
cache:
# If cache is enabled or not
enabled: false
# Cache type. Possible values are memory or redis, you'll need to enable redis below when using redis
type: memory
# When using memory this defines the maximum size an element can take
maxelementsize: 1000
2018-12-12 23:50:35 +01:00
redis:
# Whether to enable redis or not
enabled: false
# The host of the redis server including its port.
2019-02-17 20:53:04 +01:00
host: 'localhost:6379'
2018-12-12 23:50:35 +01:00
# The password used to authenicate against the redis server
2019-02-17 20:53:04 +01:00
password: ''
2018-12-12 23:50:35 +01:00
# 0 means default database
db: 0
2020-01-26 20:09:54 +01:00
cors:
# Whether to enable or disable cors headers.
2020-05-12 11:10:07 +02:00
# Note: If you want to put the frontend and the api on seperate domains or ports, you will need to enable this.
# Otherwise the frontend won't be able to make requests to the api through the browser.
2020-01-26 20:09:54 +01:00
enable: true
# A list of origins which may access the api.
origins:
2020-03-20 22:21:44 +01:00
- "*"
2020-01-26 20:09:54 +01:00
# How long (in seconds) the results of a preflight request can be cached.
maxage: 0
2018-09-13 19:53:03 +02:00
2018-10-27 11:33:28 +02:00
mailer:
2018-12-19 22:05:25 +01:00
# Whether to enable the mailer or not. If it is disabled, all users are enabled right away and password reset is not possible.
enabled: false
2018-10-27 11:33:28 +02:00
# SMTP Host
2018-12-18 17:01:46 +01:00
host: ""
2018-10-27 11:33:28 +02:00
# SMTP Host port
port: 587
# SMTP username
2018-12-18 17:01:46 +01:00
username: "user"
2018-10-27 11:33:28 +02:00
# SMTP password
2018-12-18 17:01:46 +01:00
password: ""
2018-10-27 11:33:28 +02:00
# Wether to skip verification of the tls certificate on the server
skiptlsverify: false
# The default from address when sending emails
2018-12-18 17:01:46 +01:00
fromemail: "mail@vikunja"
# The length of the mail queue.
queuelength: 100
# The timeout in seconds after which the current open connection to the mailserver will be closed.
2019-01-25 12:40:54 +01:00
queuetimeout: 30
log:
# A folder where all the logfiles should go.
path: <rootpath>logs
# Whether to show any logging at all or none
enabled: true
2019-01-25 21:09:24 +01:00
# Where the normal log should go. Possible values are stdout, stderr, file or off to disable standard logging.
2019-01-25 12:40:54 +01:00
standard: "stdout"
2020-04-12 22:32:21 +02:00
# Change the log level. Possible values (case-insensitive) are CRITICAL, ERROR, WARNING, NOTICE, INFO, DEBUG.
level: "INFO"
2019-01-25 21:09:24 +01:00
# Whether or not to log database queries. Useful for debugging. Possible values are stdout, stderr, file or off to disable database logging.
2019-01-25 12:40:54 +01:00
database: "off"
2020-04-12 22:32:21 +02:00
# The log level for database log messages. Possible values (case-insensitive) are CRITICAL, ERROR, WARNING, NOTICE, INFO, DEBUG.
databaselevel: "WARNING"
2019-01-25 21:09:24 +01:00
# Whether to log http requests or not. Possible values are stdout, stderr, file or off to disable http logging.
2019-01-25 12:40:54 +01:00
http: "stdout"
2019-01-25 21:09:24 +01:00
# Echo has its own logging which usually is unnessecary, which is why it is disabled by default. Possible values are stdout, stderr, file or off to disable standard logging.
2019-07-21 23:27:30 +02:00
echo: "off"
ratelimit:
# whether or not to enable the rate limit
enabled: false
# The kind on which rates are based. Can be either "user" for a rate limit per user or "ip" for an ip-based rate limit.
kind: user
# The time period in seconds for the limit
period: 60
# The max number of requests a user is allowed to do in the configured time period
limit: 100
# The store where the limit counter for each user is stored. Possible values are "memory" or "redis"
store: memory
2019-10-16 22:52:29 +02:00
files:
# The path where files are stored
basepath: ./files # relative to the binary
2019-10-18 17:30:25 +02:00
# The maximum size of a file, as a human-readable string.
# Warning: The max size is limited 2^64-1 bytes due to the underlying datatype
maxsize: 20MB
2020-01-19 17:52:16 +01:00
migration:
# These are the settings for the wunderlist migrator
wunderlist:
# Wheter to enable the wunderlist migrator or not
2020-02-17 18:29:17 +01:00
enable: false
2020-01-19 17:52:16 +01:00
# The client id, required for making requests to the wunderlist api
# You need to register your vikunja instance at https://developer.wunderlist.com/apps/new to get this
clientid:
# The client secret, also required for making requests to the wunderlist api
clientsecret:
# The url where clients are redirected after they authorized Vikunja to access their wunderlist stuff.
# This needs to match the url you entered when registering your Vikunja instance at wunderlist.
2020-02-17 19:52:26 +01:00
# This is usually the frontend url where the frontend then makes a request to /migration/wunderlist/migrate
2020-01-19 17:52:16 +01:00
# with the code obtained from the wunderlist api.
2020-02-17 19:52:26 +01:00
# Note that the vikunja frontend expects this to be /migrate/wunderlist
2020-01-19 17:52:16 +01:00
redirecturl:
2020-05-23 22:50:54 +02:00
todoist:
# Wheter to enable the todoist migrator or not
enable: false
# The client id, required for making requests to the wunderlist api
# You need to register your vikunja instance at https://developer.todoist.com/appconsole.html to get this
clientid:
# The client secret, also required for making requests to the todoist api
clientsecret:
# The url where clients are redirected after they authorized Vikunja to access their todoist items.
# This needs to match the url you entered when registering your Vikunja instance at todoist.
# This is usually the frontend url where the frontend then makes a request to /migration/todoist/migrate
# with the code obtained from the todoist api.
# Note that the vikunja frontend expects this to be /migrate/todoist
redirecturl:
2020-03-01 22:10:25 +01:00
avatar:
# Switch between avatar providers. Possible values are gravatar and default.
# gravatar will fetch the avatar based on the user email.
# default will return a default avatar for every request.
provider: gravatar
# When using gravatar, this is the duration in seconds until a cached gravatar user avatar expires
gravatarexpiration: 3600