a mini social media app for small communities
1// Toggles developer mode; when true, allows access to the admin panel for all users.
2dev_mode = false
3// Path to the static directory. You shouldn't ever need to change this.
4static_path = 'src/static'
5
6// General instance settings
7instance = {
8 // Instance version. This is shown on the about page.
9 version = '2025.12'
10
11 // Set this to '' if your instance is closed source. This is shown on the about page.
12 source = 'https://tangled.org/emmeline.girlkisser.top/beep'
13
14 // The instance's name, used for the page titles and on the homepage.
15 name = 'beep'
16 // The welcome message to show on the homepage.
17 welcome = 'welcome to beep!'
18
19 // TODO: Move default_theme and allow_changing_theme to user settings
20 // Default theme applied for all users.
21 default_theme = 'https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.classless.min.css'
22 // Whether or not users should be able to change their theme.
23 allow_changing_theme = true
24
25 // Toggle to require that users have the invite code to register.
26 invite_only = false
27 // Invite code. You can change this at any time.
28 invite_code = ''
29
30 // Toggle to allow any non-logged-in user to view data (posts, users, etc)
31 public_data = false
32}
33
34http = {
35 port = 8008
36}
37
38// Database settings.
39postgres = {
40 // Name of database container in compose.yml
41 host = 'beep-database'
42 port = 5432
43 user = 'beep'
44 password = 'beep' // TODO: Read from .env
45 db = 'beep'
46}
47
48hcaptcha = {
49 // Toggles if hcaptcha is enabled.
50 enabled = false
51 secret = '' // TODO: Read from .env
52 site_key = ''
53}
54
55// Post settings.
56post = {
57 title_min_len = 1
58 title_max_len = 50
59 title_pattern = '.*'
60
61 body_min_len = 1
62 body_max_len = 1000
63 body_pattern = '.*'
64
65 // Whether or not posts can be marked as NSFW.
66 allow_nsfw = true
67}
68
69// User settings.
70user = {
71 username_min_len = 3
72 username_max_len = 20
73 username_pattern = '[a-z0-9_.]+'
74
75 nickname_min_len = 1
76 nickname_max_len = 20
77 nickname_pattern = '.*'
78
79 password_min_len = 12
80 password_max_len = 72
81 password_pattern = '.+'
82
83 pronouns_min_len = 0
84 pronouns_max_len = 30
85 pronouns_pattern = '.*'
86
87 bio_min_len = 0
88 bio_max_len = 200
89 bio_pattern = '.*'
90}
91
92// Welcome notification settings.
93welcome = {
94 // Title of the notification.
95 summary = 'welcome!'
96 // Notification body text. %s is replaced with the user's name.
97 body = 'hello %s and welcome to beep! i hope you enjoy your stay here :D'
98}