Configuration

Every Leakd option in shared/config.lua and its default — the app icon and id, posts and comments, the home feed, explore and reels, stories, Direct, lives, search, request limits, reports and notifications.

Everything is in shared/config.lua. Restart oxide-leakd after a change. The text players see is in locales/en.json.

App

OptionDefaultMeaning
Config.DebugfalseHas no effect in this version; leave it false
Config.App.id'leakd'The app's id on the phone, and the id to use in the phone's preinstalled apps. Leave it as 'leakd': the phone only serves the id declared in fxmanifest.lua
Config.App.color'#0E9BD8'The icon's colour where the phone cannot show the icon picture
Config.App.iconBackground3 colours1 to 3 hex colours of the gradient behind the icon picture (web/dist/icon.svg)
Config.App.order60Where the app sorts in the Store and on a new home screen; lower comes first

Posts and comments

OptionDefaultMeaning
Config.Profile.bioMax150Longest bio, in characters
Config.Posts.captionMax2200Longest caption
Config.Posts.maxMedia10Photos in one post. A video post holds one video
Config.Comments.max500Longest comment
Config.Comments.pageSize30Comments loaded at a time

Home

Posts from the people a player follows, newest first. Likes and comments move a post up a little: each step of engagement is worth boostSeconds of time, never more than maxBoostSeconds.

OptionDefaultMeaning
Config.Feed.pageSize12Posts loaded at a time
Config.Feed.boostSeconds1800How far engagement moves a post up
Config.Feed.maxBoostSeconds14400The most it can move up (4 hours)
Config.Feed.sameAuthorRun2Most posts in a row from one person, when others can come between

Explore and Reels

OptionDefaultMeaning
Config.Explore.days3How recent a post must be to count as popular. A quiet server shows the newest posts instead
Config.Explore.candidates300Posts read before ranking
Config.Explore.pageSize30Tiles loaded at a time

Stories

OptionDefaultMeaning
Config.Stories.hours24How long a story shows
Config.Stories.photoSeconds5How long a photo story stays on screen
Config.Stories.keepDays2Days an expired story is kept (for viewer lists and reports) before it is deleted

Direct

OptionDefaultMeaning
Config.Direct.messageMax1000Longest message
Config.Direct.pageSize40Messages loaded at a time

Live

How many can watch, how many lives run at once and the longest live are the phone's live stream settings (/phone settings → Media → Live streams).

OptionDefaultMeaning
Config.Live.titleMax60Longest live title
Config.Live.commentMax150Longest live comment
Config.Live.maxMinutes120Leakd ends a live after this long. The phone's own Longest stream (60 minutes by default) also applies; the shorter one wins
Config.Live.notifyFollowerstrueTell followers when someone goes live
Config.Live.notifyMax200Most followers told, newest followers first
Config.Live.heartbeatSeconds60A live whose host's page goes quiet this long ends
OptionDefaultMeaning
Config.Search.results20Accounts shown for a search

Request limits

Config.RateLimits sets how many requests of each kind one player can make: { burst, per milliseconds }. The server refuses anything over, and the player sees "Slow down".

KindDefaultCovers
read60 per 10 sLoading screens
post6 per 60 sPosts, stories, edits and deletes
engage40 per 10 sLikes, saves, story views, hearts
comment8 per 15 sComments
follow20 per 60 sFollows, unfollows and requests
message12 per 15 sDirect messages
profile8 per 60 sProfile changes
live6 per 60 sStarting and ending lives
liveChat10 per 10 sLive comments
safety6 per 60 sReports
admin40 per 10 sModeration
opened3 per 10 sTaking a phone out: Leakd checks which account that phone is on

Reports

OptionDefaultMeaning
Config.Report.reasons7 idsThe reasons on offer. Each id needs a reason.<id> line in the locale file
Config.Report.noteMax300Longest note on a report

Notifications

Config.Notifications turns each kind of phone notification on or off: likes, comments, follows, mentions, messages and live. Activity is kept either way.