# rather than editing this file, it is strongly suggested to create config.yaml # and override only what you need. name: szurubooru # shown in the website title and on the front page debug: 0 # generate source maps for JS debugging? show_sql: 0 # show sql in server logs? transpile: 1 # generate bigger JS to support older browsers? secret: change # used to salt the users' password hashes api_url: # where frontend connects to, example: http://api.example.com/ base_url: # used to form links to frontend, example: http://example.com/ data_url: # used to form links to posts and avatars, example: http://example.com/data/ data_dir: # absolute path for posts and avatars storage, example: /srv/www/booru/client/public/data/ user_agent: # user agent name used to download files from the web on behalf of the api users # usage: schema://user:password@host:port/database_name # example: postgres://szuru:dog@localhost:5432/szuru_test # example (useful for tests): sqlite:///:memory: database: test_database: 'sqlite:///:memory:' # required for running the test suite thumbnails: avatar_width: 300 avatar_height: 300 post_width: 300 post_height: 300 # used to send password reset e-mails smtp: host: # example: localhost port: # example: 25 user: # example: bot pass: # example: groovy123 # host can be left empty, in which case it is recommended to fill contactEmail. contactEmail: # example: bob@example.com. Meant for manual password reset procedures # used for reverse image search elasticsearch: host: localhost port: 9200 index: szurubooru enable_safety: yes tag_name_regex: ^\S+$ tag_category_name_regex: ^[^\s%+#/]+$ # don't make these more restrictive unless you want to annoy people; if you do # customize them, make sure to update the instructions in the registration form # template as well. password_regex: '^.{5,}$' user_name_regex: '^[a-zA-Z0-9_-]{1,32}$' default_rank: regular privileges: 'users:create': anonymous 'users:list': regular 'users:view': regular 'users:edit:any:name': moderator 'users:edit:any:pass': moderator 'users:edit:any:email': moderator 'users:edit:any:avatar': moderator 'users:edit:any:rank': moderator 'users:edit:self:name': regular 'users:edit:self:pass': regular 'users:edit:self:email': regular 'users:edit:self:avatar': regular 'users:edit:self:rank': moderator # one can't promote themselves or anyone to upper rank than their own. 'users:delete:any': administrator 'users:delete:self': regular 'posts:create:anonymous': regular 'posts:create:identified': regular 'posts:list': anonymous 'posts:reverse_search': regular 'posts:view': anonymous 'posts:edit:content': power 'posts:edit:flags': regular 'posts:edit:notes': regular 'posts:edit:relations': regular 'posts:edit:safety': power 'posts:edit:source': regular 'posts:edit:tags': regular 'posts:edit:thumbnail': power 'posts:feature': moderator 'posts:delete': moderator 'posts:score': regular 'posts:merge': moderator 'posts:favorite': regular 'posts:bulk-edit:tags': power 'posts:bulk-edit:safety': power 'tags:create': regular 'tags:edit:names': power 'tags:edit:category': power 'tags:edit:description': power 'tags:edit:implications': power 'tags:edit:suggestions': power 'tags:list': regular # note: will be available as data_url/tags.json anyway 'tags:view': anonymous 'tags:merge': moderator 'tags:delete': moderator 'tag_categories:create': moderator 'tag_categories:edit:name': moderator 'tag_categories:edit:color': moderator 'tag_categories:list': anonymous # note: will be available as data_url/tags.json anyway 'tag_categories:view': anonymous 'tag_categories:delete': moderator 'tag_categories:set_default': moderator 'comments:create': regular 'comments:delete:any': moderator 'comments:delete:own': regular 'comments:edit:any': moderator 'comments:edit:own': regular 'comments:list': regular 'comments:view': regular 'comments:score': regular 'snapshots:list': power 'uploads:create': regular