tinylib.json
An app's tinylib.json, in its folder. tinylib dev, preview and publish check it, and refuse a field Tinylib
doesn't know. encrypted, rulesKeys and uses may be left out.
Example
{ "slug": "chess", "name": "Chess", "description": "Live chess with a friend.", "icon": "icon.svg", "uses": ["notifications"] }
Properties
| Property | Type | Description |
|---|---|---|
slug | string | The readable name in the app's links and its subdomain: lowercase letters and digits, single hyphens between. The first publish claims it. |
name | string | - |
description | string | - |
icon | string | The path of an image in the app's folder: .svg, .png, .webp, .jpg or .jpeg. |
encrypted | boolean | Set at the first publish and never changed: a later publish with another value is refused. An app with encryption has no rules.js and no values for friends, and its data is readable only on people's own devices. False when left out. |
rulesKeys | string[] | The keys of tinylib.data only the rules write: a key, or a prefix ending in / for every key under it. The page can't write them. A publish can't drop one, or declare one the page has written. |
uses | ("friends" | "notifications")[] | The switches the app uses, which the app sheet asks about at the first open. tinylib dev warns, and tinylib publish refuses, when the app's code uses one not listed. |
Use
type Use = typeof USES[number];
USES
const USES: readonly ["notifications", "friends"];
What uses may list.