Let people personalize your app without editing its code.
Settings let people change an app’s text, colors, location, and behavior from
Niblet. The saved values arrive in main(config) whenever the app renders.
Use get_schema() to define the controls people see when they configure your
app:
load("schema.star", "schema")def get_schema(): return schema.Schema( version = "1", fields = [ schema.Text( id = "label", name = "Label", desc = "Short text shown on the display.", default = "Niblet", ), schema.Toggle( id = "show_label", name = "Show label", desc = "Display the configured label.", default = True, ), ], )
You can add text, toggles, dropdowns, colors, dates, locations, photos, and
connected services. See the schema reference for every
available field. Some connections require a provider supported by Niblet Cloud.
Never put passwords or API tokens in source code or default values. Credential
fields are stored separately and are not returned through MCP. OAuth connections
are configured by Niblet Cloud and exposed to apps only while they render.Declare each secret text field in manifest.yaml, including who supplies it:
credentials: - id: api_key owner: publisher # or user provider: api.example.com required: truenetwork_hosts: - api.example.com
The same field must use secret = True in get_schema(). After the first push,
set a publisher-owned value with niblet apps secrets set api_key. Niblet asks
each installer for user-owned values separately. network_hosts is the exact
HTTPS host allowlist requested for hosted rendering.
Do not log the complete configuration object. It may contain a person’s location
or other private content.
Last modified on September 2, 2026
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Niblet Docs","description":"Set up Niblet, build 64×32 apps locally, connect the CLI and MCP, and publish apps.","colors":{"primary":"#0D9373","light":"#55D799","dark":"#0D9373"},"logo":{"light":"https://mintcdn.com/niblet/y747dLAb64ljeiwb/logo-light.svg?fit=max\u0026auto=format\u0026n=y747dLAb64ljeiwb\u0026q=85\u0026s=c3aab484e020df576e873b07176c25f0","dark":"https://mintcdn.com/niblet/y747dLAb64ljeiwb/logo-dark.svg?fit=max\u0026auto=format\u0026n=y747dLAb64ljeiwb\u0026q=85\u0026s=dafff4c3f8d61b59a06c4ef0b0765a2d","href":"https://www.heyniblet.com"},"favicon":"https://mintcdn.com/niblet/y747dLAb64ljeiwb/favicon.svg?fit=max\u0026auto=format\u0026n=y747dLAb64ljeiwb\u0026q=85\u0026s=d116ef8db6451bb170463e286b7a30ca","navbar":{"links":[{"href":"https://discord.gg/Ch2yzgf55Z","label":"Join our Discord","type":"discord"},{"href":"https://github.com/heyniblet","type":"github"}],"primary":{"type":"button","label":"Dashboard","href":"https://www.heyniblet.com/dashboard"}},"footer":{"socials":{"instagram":"https://www.instagram.com/heyniblet","reddit":"https://www.reddit.com/r/heyniblet","discord":"https://discord.gg/Ch2yzgf55Z"}},"search":{"prompt":"Search Niblet guides and reference..."},"seo":{"metatags":{"og:site_name":"Niblet Docs","twitter:card":"summary_large_image"},"organization":{"name":"Niblet","url":"https://www.heyniblet.com","logo":"https://www.heyniblet.com/favicon.svg","sameAs":["https://github.com/heyniblet"]},"indexing":"navigable"},"icons":{"library":"lucide"},"styling":{"eyebrows":"breadcrumbs","latex":false},"contextual":{"options":["copy","view","assistant","chatgpt","claude"],"display":"header"},"metadata":{"timestamp":true},"markdown":{"instructions":["Treat Niblet documentation as the source of truth for shipped Niblet behavior.","Keep app source editing, validation, preview, and rendering on the developer's system.","Never ask users to paste credentials, Wi-Fi passwords, OAuth codes, or bearer tokens into chat."]},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"niblet","hasAudioNarration":false,"actualSubdomain":"niblet","customDomains":["docs.heyniblet.com"],"gitSource":{"type":"github","owner":"heyniblet","repo":"niblet-mintlify","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ab5f86007d36642e2a07581","collectionId":"e2e768f8-298c-466a-8475-403c44304bae","liveDeploymentHistoryId":"6ab5f86007d36642e2a07581","schemaVersion":"v3"},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ab5f86007d36642e2a07581","clientVersion":"0.0.3966","searchFilterCounts":[{"language":"default","tag":"Guides","count":17},{"language":"default","tag":"Developer tools","count":9},{"language":"default","tag":"Build apps","count":6},{"language":"default","tag":"Reference","count":6},{"language":"default","tag":"Niblet MCP","count":5},{"language":"default","tag":"Niblet CLI","count":4},{"language":"default","tag":"App runtime","count":4},{"language":"default","tag":"Set up","count":3},{"language":"default","tag":"Help","count":3},{"language":"default","tag":"Publish","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".tidbyt-model-cards [data-component-part=card-image]{aspect-ratio:8/5;object-fit:cover}a[title=\"Join our Discord\"][href=\"https://discord.gg/Ch2yzgf55Z\"]>span+span{display:none}"}],"page":{"pagePath":"build/configuration","slug":"/build/configuration","pageMetadata":{"title":"Add app settings","description":"Let people personalize your app without editing its code.","href":"/build/configuration"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Let people personalize your app without editing its code.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,Heading,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Settings let people change an app’s text, colors, location, and behavior from\nNiblet. The saved values arrive in `,_jsx(_components.code,{children:`main(config)`}),` whenever the app renders.`]}),`\n`,_jsx(Heading,{level:`2`,id:`read-saved-settings`,children:`Read saved settings`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`def main(config):`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` label = config.get(\"label\") or \"Niblet\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` show_label = config.bool(\"show_label\", True)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.p,{children:`Always provide a useful default so the app can render before setup is complete.`}),`\n`,_jsx(Heading,{level:`2`,id:`show-settings-in-niblet`,children:`Show settings in Niblet`}),`\n`,_jsxs(_components.p,{children:[`Use `,_jsx(_components.code,{children:`get_schema()`}),` to define the controls people see when they configure your\napp:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`21`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`21`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`load(\"schema.star\", \"schema\")`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`def get_schema():`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` return schema.Schema(`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` version = \"1\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` fields = [`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` schema.Text(`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` id = \"label\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` name = \"Label\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` desc = \"Short text shown on the display.\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` default = \"Niblet\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` ),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` schema.Toggle(`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` id = \"show_label\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` name = \"Show label\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` desc = \"Display the configured label.\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` default = True,`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` ),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` ],`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` )`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`You can add text, toggles, dropdowns, colors, dates, locations, photos, and\nconnected services. See the `,_jsx(_components.a,{href:`/reference/schema`,children:`schema reference`}),` for every\navailable field. Some connections require a provider supported by Niblet Cloud.`]}),`\n`,_jsx(Heading,{level:`2`,id:`keep-secrets-separate`,children:`Keep secrets separate`}),`\n`,_jsx(_components.p,{children:`Never put passwords or API tokens in source code or default values. Credential\nfields are stored separately and are not returned through MCP. OAuth connections\nare configured by Niblet Cloud and exposed to apps only while they render.`}),`\n`,_jsxs(_components.p,{children:[`Declare each secret text field in `,_jsx(_components.code,{children:`manifest.yaml`}),`, including who supplies it:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`yaml`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`7`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`credentials`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`id`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`api_key`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` owner`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`publisher`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # or user`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` provider`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`api.example.com`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` required`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`network_hosts`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`api.example.com`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`The same field must use `,_jsx(_components.code,{children:`secret = True`}),` in `,_jsx(_components.code,{children:`get_schema()`}),`. After the first push,\nset a publisher-owned value with `,_jsx(_components.code,{children:`niblet apps secrets set api_key`}),`. Niblet asks\neach installer for user-owned values separately. `,_jsx(_components.code,{children:`network_hosts`}),` is the exact\nHTTPS host allowlist requested for hosted rendering.`]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Do not log the complete configuration object. It may contain a person’s location\nor other private content.`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Add app settings","description":"Let people personalize your app without editing its code.","href":"/build/configuration"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Read saved settings","slug":"read-saved-settings","depth":2,"children":[]},{"title":"Show settings in Niblet","slug":"show-settings-in-niblet","depth":2,"children":[]},{"title":"Keep secrets separate","slug":"keep-secrets-separate","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"niblet","siteName":"Niblet Docs","title":"Add app settings - Niblet Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-02T17:16:21.457Z","gitLastModified":"2026-09-02T17:15:40.000Z","originalFileLocation":"build/configuration.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Let people personalize your app without editing its code.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Niblet Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Add app settings - Niblet Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Let people personalize your app without editing its code.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Niblet Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.heyniblet.com/build/configuration\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://niblet.mintlify.app/_mintlify/api/og/v2?division=Build+apps\u0026amp;title=Add+app+settings\u0026amp;description=Let+people+personalize+your+app+without+editing+its+code.\u0026amp;theme=6a89cdeae9dc16f652461618\u0026amp;signature=8bc295c8b6a642d675ff706a4e61a443373817ded00c6069a342ed6c76965d0f\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Add app settings - Niblet Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Let people personalize your app without editing its code.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://niblet.mintlify.app/_mintlify/api/og/v2?division=Build+apps\u0026amp;title=Add+app+settings\u0026amp;description=Let+people+personalize+your+app+without+editing+its+code.\u0026amp;theme=6a89cdeae9dc16f652461618\u0026amp;signature=8bc295c8b6a642d675ff706a4e61a443373817ded00c6069a342ed6c76965d0f\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/niblet/VcbLmH71GYgc0zDw/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Niblet Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0D9373\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.heyniblet.com/build/configuration\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/build/configuration.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://www.heyniblet.com/#organization\",\"name\":\"Niblet\",\"url\":\"https://www.heyniblet.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.heyniblet.com/favicon.svg\"},\"sameAs\":[\"https://github.com/heyniblet\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.heyniblet.com#website\",\"name\":\"Niblet Docs\",\"url\":\"https://docs.heyniblet.com\",\"publisher\":{\"@id\":\"https://www.heyniblet.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.heyniblet.com/build/configuration#webpage\",\"url\":\"https://docs.heyniblet.com/build/configuration\",\"name\":\"Add app settings\",\"description\":\"Let people personalize your app without editing its code.\",\"dateModified\":\"2026-09-02T17:15:40.000Z\",\"isPartOf\":{\"@id\":\"https://docs.heyniblet.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.heyniblet.com/build/configuration#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.heyniblet.com/build/configuration#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Build apps\",\"item\":\"https://docs.heyniblet.com/build/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Add app settings\",\"item\":\"https://docs.heyniblet.com/build/configuration\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.heyniblet.com/build/configuration#article\",\"headline\":\"Add app settings\",\"name\":\"Add app settings\",\"description\":\"Let people personalize your app without editing its code.\",\"url\":\"https://docs.heyniblet.com/build/configuration\",\"mainEntityOfPage\":{\"@id\":\"https://docs.heyniblet.com/build/configuration#webpage\"},\"dateModified\":\"2026-09-02T17:15:40.000Z\",\"publisher\":{\"@id\":\"https://www.heyniblet.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.heyniblet.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Niblet Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Niblet Docs","nav":{"global":null,"tabs":[{"tab":"Guides","icon":"book-open","groups":[{"group":"Start here","pages":[{"title":"Niblet for developers","sidebarTitle":"Overview","href":""},{"title":"Quickstart","href":"/quickstart"}]},{"group":"Set up","pages":[{"title":"Install the CLI","href":"/getting-started/install-cli"},{"title":"Revive a Tidbyt with Niblet","href":"/getting-started/migrate-gen1"},{"title":"Change Wi-Fi and reset","href":"/getting-started/wifi-and-reset"}]},{"group":"Build apps","pages":[{"title":"Getting started","href":"/build/overview"},{"title":"Create your first app","description":"Create a configurable message app and preview it in your browser.","href":"/build/first-app"},{"title":"Add app settings","href":"/build/configuration"},{"title":"Use APIs and caching","description":"Load public data without overwhelming upstream services, and plan for failures.","href":"/build/data-caching"},{"title":"Design for the display","href":"/build/design-64x32"},{"title":"App examples","href":"/build/examples"}]},{"group":"Publish","pages":[{"title":"Submit your app for review","href":"/publish/review-process"},{"title":"Update your app","href":"/publish/update-app"},{"title":"Before you submit","href":"/publish/checklist"}]},{"group":"Help","pages":[{"title":"Fix common problems","href":"/help/troubleshooting"},{"title":"FAQ","href":"/help/faq"},{"title":"Contact support","href":"/help/support"}]}]},{"tab":"Developer tools","icon":"terminal","pages":[{"title":"Developer tools","href":"/cli/overview"}]},{"tab":"Reference","icon":"braces","pages":[{"title":"Reference","href":"/reference/widgets"}]}]},"title":"Add app settings - Niblet Docs","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":[],"chunks":[]}