[{"data":1,"prerenderedAt":1503},["ShallowReactive",2],{"docs-nav":3,"doc-\u002Fdocs\u002Finstallation":79,"content-query-20xbF3sij0":868},[4,10,15,19,23,28,34,38,43,47,52,57,61,66,70,74],{"_path":5,"title":6,"description":7,"order":8,"category":9},"\u002Fdocs\u002Fapi-reference","API Reference","Overview of the Vaultaris REST API — endpoints, authentication, response conventions, and rate limiting.",1,"Reference",{"_path":11,"title":12,"description":13,"order":14,"category":9},"\u002Fdocs\u002Farchitecture","Architecture","System design overview — components, request lifecycle, background workers, and data flow in Vaultaris.",4,{"_path":16,"title":17,"description":18,"order":8,"category":17},"\u002Fdocs\u002Fconcepts","Core Concepts","Understand the building blocks of Vaultaris — tenants, users, roles, groups, applications, sessions, and the security primitives that connect them.",{"_path":20,"title":21,"description":22,"order":8,"category":21},"\u002Fdocs\u002Fconfiguration","Configuration","Complete reference for all Vaultaris environment variables.",{"_path":24,"title":25,"description":26,"order":8,"category":27},"\u002Fdocs\u002Fdeployment","Deployment Guide","Deploy Vaultaris to production using Docker Compose, bare metal, or a managed container platform.","Deployment",{"_path":29,"title":30,"description":31,"order":32,"category":33},"\u002Fdocs\u002Finstallation","Installation","Install Vaultaris using Docker, a pre-built binary, or by compiling from source.",3,"Getting Started",{"_path":35,"title":36,"description":37,"order":8,"category":33},"\u002Fdocs\u002Fintroduction","Introduction","Vaultaris is an open-source, enterprise-grade Identity and Access Management platform written in Rust — a self-hostable alternative to Keycloak and Auth0.",{"_path":39,"title":40,"description":41,"order":42,"category":27},"\u002Fdocs\u002Fkubernetes","Kubernetes","Deploy Vaultaris on Kubernetes using the official Helm chart or plain manifests.",2,{"_path":44,"title":45,"description":46,"order":42,"category":17},"\u002Fdocs\u002Fmulti-tenancy","Multi-Tenancy","How Vaultaris isolates organizations, supports SaaS use cases, and manages license-driven resource freezing.",{"_path":48,"title":49,"description":50,"order":8,"category":51},"\u002Fdocs\u002Foauth-oidc","OAuth 2.0 & OpenID Connect","How to integrate Vaultaris as an authorization server — authorization code, client credentials, password flows, DPoP sender-constrained tokens, and hosted login.","Authentication & Authorization",{"_path":53,"title":54,"description":55,"order":8,"category":56},"\u002Fdocs\u002Fplugins","Plugin Development","Extend Vaultaris with type-safe native Rust plugins.","Plugins",{"_path":58,"title":59,"description":60,"order":42,"category":33},"\u002Fdocs\u002Fquickstart","Quickstart","Run Vaultaris locally in under five minutes using Docker Compose.",{"_path":62,"title":63,"description":64,"order":42,"category":65},"\u002Fdocs\u002Fsdk-nodejs","Node.js SDK","Use the vaultaris-sdk package to integrate Vaultaris into your Node.js or TypeScript applications. Includes transparent DPoP support.","SDKs",{"_path":67,"title":68,"description":69,"order":8,"category":65},"\u002Fdocs\u002Fsdk-rust","Rust SDK","Use the vaultaris-sdk crate to interact with Vaultaris from your Rust applications. Includes transparent DPoP support.",{"_path":71,"title":72,"description":73,"order":32,"category":9},"\u002Fdocs\u002Fsecurity","Security","Security architecture, cryptographic choices, and hardening recommendations for Vaultaris.",{"_path":75,"title":76,"description":77,"order":78,"category":51},"\u002Fdocs\u002Fwebauthn","WebAuthn \u002F Passkeys \u002F FIDO2","Complete guide to integrating WebAuthn passwordless authentication and passkeys with Vaultaris.",5,{"_path":29,"_dir":80,"_draft":81,"_partial":81,"_locale":82,"title":30,"description":31,"order":32,"category":33,"body":83,"_type":862,"_id":863,"_source":864,"_file":865,"_stem":866,"_extension":867},"docs",false,"",{"type":84,"children":85,"toc":853},"root",[86,95,101,134,139,309,315,328,412,418,434,515,526,532,554,706,712,724,730,759,787,793,847],{"type":87,"tag":88,"props":89,"children":91},"element","h2",{"id":90},"option-1-docker-recommended",[92],{"type":93,"value":94},"text","Option 1 — Docker (recommended)",{"type":87,"tag":96,"props":97,"children":98},"p",{},[99],{"type":93,"value":100},"The official image is published to GitHub Container Registry:",{"type":87,"tag":102,"props":103,"children":107},"pre",{"className":104,"code":105,"language":106,"meta":82,"style":82},"language-bash shiki shiki-themes github-dark-dimmed github-light","docker pull ghcr.io\u002Frustlanges\u002Fvaultaris:latest\n","bash",[108],{"type":87,"tag":109,"props":110,"children":111},"code",{"__ignoreMap":82},[112],{"type":87,"tag":113,"props":114,"children":116},"span",{"class":115,"line":8},"line",[117,123,129],{"type":87,"tag":113,"props":118,"children":120},{"style":119},"--shiki-default:#F69D50;--shiki-light:#6F42C1",[121],{"type":93,"value":122},"docker",{"type":87,"tag":113,"props":124,"children":126},{"style":125},"--shiki-default:#96D0FF;--shiki-light:#032F62",[127],{"type":93,"value":128}," pull",{"type":87,"tag":113,"props":130,"children":131},{"style":125},[132],{"type":93,"value":133}," ghcr.io\u002Frustlanges\u002Fvaultaris:latest\n",{"type":87,"tag":96,"props":135,"children":136},{},[137],{"type":93,"value":138},"Run with the minimum required environment variables:",{"type":87,"tag":102,"props":140,"children":142},{"className":104,"code":141,"language":106,"meta":82,"style":82},"docker run -d \\\n  --name vaultaris \\\n  -p 8080:8080 \\\n  -e DATABASE_URL=\"postgres:\u002F\u002Fuser:pass@host:5432\u002Fvaultaris\" \\\n  -e JWT_SECRET=\"$(openssl rand -hex 32)\" \\\n  -e ENCRYPTION_KEY=\"$(openssl rand -hex 16)\" \\\n  ghcr.io\u002Frustlanges\u002Fvaultaris:latest\n",[143],{"type":87,"tag":109,"props":144,"children":145},{"__ignoreMap":82},[146,170,187,204,221,262,300],{"type":87,"tag":113,"props":147,"children":148},{"class":115,"line":8},[149,153,158,164],{"type":87,"tag":113,"props":150,"children":151},{"style":119},[152],{"type":93,"value":122},{"type":87,"tag":113,"props":154,"children":155},{"style":125},[156],{"type":93,"value":157}," run",{"type":87,"tag":113,"props":159,"children":161},{"style":160},"--shiki-default:#6CB6FF;--shiki-light:#005CC5",[162],{"type":93,"value":163}," -d",{"type":87,"tag":113,"props":165,"children":167},{"style":166},"--shiki-default:#F47067;--shiki-light:#005CC5",[168],{"type":93,"value":169}," \\\n",{"type":87,"tag":113,"props":171,"children":172},{"class":115,"line":42},[173,178,183],{"type":87,"tag":113,"props":174,"children":175},{"style":160},[176],{"type":93,"value":177},"  --name",{"type":87,"tag":113,"props":179,"children":180},{"style":125},[181],{"type":93,"value":182}," vaultaris",{"type":87,"tag":113,"props":184,"children":185},{"style":166},[186],{"type":93,"value":169},{"type":87,"tag":113,"props":188,"children":189},{"class":115,"line":32},[190,195,200],{"type":87,"tag":113,"props":191,"children":192},{"style":160},[193],{"type":93,"value":194},"  -p",{"type":87,"tag":113,"props":196,"children":197},{"style":125},[198],{"type":93,"value":199}," 8080:8080",{"type":87,"tag":113,"props":201,"children":202},{"style":166},[203],{"type":93,"value":169},{"type":87,"tag":113,"props":205,"children":206},{"class":115,"line":14},[207,212,217],{"type":87,"tag":113,"props":208,"children":209},{"style":160},[210],{"type":93,"value":211},"  -e",{"type":87,"tag":113,"props":213,"children":214},{"style":125},[215],{"type":93,"value":216}," DATABASE_URL=\"postgres:\u002F\u002Fuser:pass@host:5432\u002Fvaultaris\"",{"type":87,"tag":113,"props":218,"children":219},{"style":166},[220],{"type":93,"value":169},{"type":87,"tag":113,"props":222,"children":223},{"class":115,"line":78},[224,228,233,238,243,248,253,258],{"type":87,"tag":113,"props":225,"children":226},{"style":160},[227],{"type":93,"value":211},{"type":87,"tag":113,"props":229,"children":230},{"style":125},[231],{"type":93,"value":232}," JWT_SECRET=\"$(",{"type":87,"tag":113,"props":234,"children":235},{"style":119},[236],{"type":93,"value":237},"openssl",{"type":87,"tag":113,"props":239,"children":240},{"style":125},[241],{"type":93,"value":242}," rand ",{"type":87,"tag":113,"props":244,"children":245},{"style":160},[246],{"type":93,"value":247},"-hex",{"type":87,"tag":113,"props":249,"children":250},{"style":160},[251],{"type":93,"value":252}," 32",{"type":87,"tag":113,"props":254,"children":255},{"style":125},[256],{"type":93,"value":257},")\"",{"type":87,"tag":113,"props":259,"children":260},{"style":166},[261],{"type":93,"value":169},{"type":87,"tag":113,"props":263,"children":265},{"class":115,"line":264},6,[266,270,275,279,283,287,292,296],{"type":87,"tag":113,"props":267,"children":268},{"style":160},[269],{"type":93,"value":211},{"type":87,"tag":113,"props":271,"children":272},{"style":125},[273],{"type":93,"value":274}," ENCRYPTION_KEY=\"$(",{"type":87,"tag":113,"props":276,"children":277},{"style":119},[278],{"type":93,"value":237},{"type":87,"tag":113,"props":280,"children":281},{"style":125},[282],{"type":93,"value":242},{"type":87,"tag":113,"props":284,"children":285},{"style":160},[286],{"type":93,"value":247},{"type":87,"tag":113,"props":288,"children":289},{"style":160},[290],{"type":93,"value":291}," 16",{"type":87,"tag":113,"props":293,"children":294},{"style":125},[295],{"type":93,"value":257},{"type":87,"tag":113,"props":297,"children":298},{"style":166},[299],{"type":93,"value":169},{"type":87,"tag":113,"props":301,"children":303},{"class":115,"line":302},7,[304],{"type":87,"tag":113,"props":305,"children":306},{"style":125},[307],{"type":93,"value":308},"  ghcr.io\u002Frustlanges\u002Fvaultaris:latest\n",{"type":87,"tag":88,"props":310,"children":312},{"id":311},"option-2-docker-compose-local-development",[313],{"type":93,"value":314},"Option 2 — Docker Compose (local development)",{"type":87,"tag":96,"props":316,"children":317},{},[318,320,326],{"type":93,"value":319},"The repository ships a ",{"type":87,"tag":109,"props":321,"children":323},{"className":322},[],[324],{"type":93,"value":325},"docker-compose.yml",{"type":93,"value":327}," that includes PostgreSQL and Redis:",{"type":87,"tag":102,"props":329,"children":331},{"className":104,"code":330,"language":106,"meta":82,"style":82},"git clone https:\u002F\u002Fgithub.com\u002FVaultaris\u002Fvaultaris.git\ncd vaultaris\ncp .env.example .env  # edit as needed\ndocker compose up -d\n",[332],{"type":87,"tag":109,"props":333,"children":334},{"__ignoreMap":82},[335,353,366,390],{"type":87,"tag":113,"props":336,"children":337},{"class":115,"line":8},[338,343,348],{"type":87,"tag":113,"props":339,"children":340},{"style":119},[341],{"type":93,"value":342},"git",{"type":87,"tag":113,"props":344,"children":345},{"style":125},[346],{"type":93,"value":347}," clone",{"type":87,"tag":113,"props":349,"children":350},{"style":125},[351],{"type":93,"value":352}," https:\u002F\u002Fgithub.com\u002FVaultaris\u002Fvaultaris.git\n",{"type":87,"tag":113,"props":354,"children":355},{"class":115,"line":42},[356,361],{"type":87,"tag":113,"props":357,"children":358},{"style":160},[359],{"type":93,"value":360},"cd",{"type":87,"tag":113,"props":362,"children":363},{"style":125},[364],{"type":93,"value":365}," vaultaris\n",{"type":87,"tag":113,"props":367,"children":368},{"class":115,"line":32},[369,374,379,384],{"type":87,"tag":113,"props":370,"children":371},{"style":119},[372],{"type":93,"value":373},"cp",{"type":87,"tag":113,"props":375,"children":376},{"style":125},[377],{"type":93,"value":378}," .env.example",{"type":87,"tag":113,"props":380,"children":381},{"style":125},[382],{"type":93,"value":383}," .env",{"type":87,"tag":113,"props":385,"children":387},{"style":386},"--shiki-default:#768390;--shiki-light:#6A737D",[388],{"type":93,"value":389},"  # edit as needed\n",{"type":87,"tag":113,"props":391,"children":392},{"class":115,"line":14},[393,397,402,407],{"type":87,"tag":113,"props":394,"children":395},{"style":119},[396],{"type":93,"value":122},{"type":87,"tag":113,"props":398,"children":399},{"style":125},[400],{"type":93,"value":401}," compose",{"type":87,"tag":113,"props":403,"children":404},{"style":125},[405],{"type":93,"value":406}," up",{"type":87,"tag":113,"props":408,"children":409},{"style":160},[410],{"type":93,"value":411}," -d\n",{"type":87,"tag":88,"props":413,"children":415},{"id":414},"option-3-pre-built-binary",[416],{"type":93,"value":417},"Option 3 — Pre-built binary",{"type":87,"tag":96,"props":419,"children":420},{},[421,423,432],{"type":93,"value":422},"Download the latest release from ",{"type":87,"tag":424,"props":425,"children":429},"a",{"href":426,"rel":427},"https:\u002F\u002Fgithub.com\u002FVaultaris\u002Fvaultaris\u002Freleases",[428],"nofollow",[430],{"type":93,"value":431},"GitHub Releases",{"type":93,"value":433},":",{"type":87,"tag":102,"props":435,"children":437},{"className":104,"code":436,"language":106,"meta":82,"style":82},"# Linux x86_64\ncurl -L https:\u002F\u002Fgithub.com\u002FVaultaris\u002Fvaultaris\u002Freleases\u002Flatest\u002Fdownload\u002Fvaultaris-linux-x86_64.tar.gz \\\n  | tar xz\nchmod +x vaultaris\n.\u002Fvaultaris\n",[438],{"type":87,"tag":109,"props":439,"children":440},{"__ignoreMap":82},[441,449,471,490,507],{"type":87,"tag":113,"props":442,"children":443},{"class":115,"line":8},[444],{"type":87,"tag":113,"props":445,"children":446},{"style":386},[447],{"type":93,"value":448},"# Linux x86_64\n",{"type":87,"tag":113,"props":450,"children":451},{"class":115,"line":42},[452,457,462,467],{"type":87,"tag":113,"props":453,"children":454},{"style":119},[455],{"type":93,"value":456},"curl",{"type":87,"tag":113,"props":458,"children":459},{"style":160},[460],{"type":93,"value":461}," -L",{"type":87,"tag":113,"props":463,"children":464},{"style":125},[465],{"type":93,"value":466}," https:\u002F\u002Fgithub.com\u002FVaultaris\u002Fvaultaris\u002Freleases\u002Flatest\u002Fdownload\u002Fvaultaris-linux-x86_64.tar.gz",{"type":87,"tag":113,"props":468,"children":469},{"style":166},[470],{"type":93,"value":169},{"type":87,"tag":113,"props":472,"children":473},{"class":115,"line":32},[474,480,485],{"type":87,"tag":113,"props":475,"children":477},{"style":476},"--shiki-default:#F47067;--shiki-light:#D73A49",[478],{"type":93,"value":479},"  |",{"type":87,"tag":113,"props":481,"children":482},{"style":119},[483],{"type":93,"value":484}," tar",{"type":87,"tag":113,"props":486,"children":487},{"style":125},[488],{"type":93,"value":489}," xz\n",{"type":87,"tag":113,"props":491,"children":492},{"class":115,"line":14},[493,498,503],{"type":87,"tag":113,"props":494,"children":495},{"style":119},[496],{"type":93,"value":497},"chmod",{"type":87,"tag":113,"props":499,"children":500},{"style":125},[501],{"type":93,"value":502}," +x",{"type":87,"tag":113,"props":504,"children":505},{"style":125},[506],{"type":93,"value":365},{"type":87,"tag":113,"props":508,"children":509},{"class":115,"line":78},[510],{"type":87,"tag":113,"props":511,"children":512},{"style":119},[513],{"type":93,"value":514},".\u002Fvaultaris\n",{"type":87,"tag":96,"props":516,"children":517},{},[518,520,524],{"type":93,"value":519},"The binary reads configuration from environment variables. See ",{"type":87,"tag":424,"props":521,"children":522},{"href":20},[523],{"type":93,"value":21},{"type":93,"value":525},".",{"type":87,"tag":88,"props":527,"children":529},{"id":528},"option-4-build-from-source",[530],{"type":93,"value":531},"Option 4 — Build from source",{"type":87,"tag":96,"props":533,"children":534},{},[535,537,544,546,552],{"type":93,"value":536},"Requirements: ",{"type":87,"tag":424,"props":538,"children":541},{"href":539,"rel":540},"https:\u002F\u002Frustup.rs",[428],[542],{"type":93,"value":543},"Rust",{"type":93,"value":545}," ≥ 1.85, ",{"type":87,"tag":109,"props":547,"children":549},{"className":548},[],[550],{"type":93,"value":551},"libpq",{"type":93,"value":553}," (PostgreSQL client library).",{"type":87,"tag":102,"props":555,"children":557},{"className":104,"code":556,"language":106,"meta":82,"style":82},"git clone https:\u002F\u002Fgithub.com\u002FVaultaris\u002Fvaultaris.git\ncd vaultaris\n\n# Development build\ncargo build\n\n# Optimized release build (LTO enabled — takes ~2 min)\ncargo build --release\n\n# Run\nDATABASE_URL=\"postgres:\u002F\u002F...\" JWT_SECRET=\"...\" .\u002Ftarget\u002Frelease\u002Fvaultaris\n",[558],{"type":87,"tag":109,"props":559,"children":560},{"__ignoreMap":82},[561,576,587,596,604,617,624,632,650,658,667],{"type":87,"tag":113,"props":562,"children":563},{"class":115,"line":8},[564,568,572],{"type":87,"tag":113,"props":565,"children":566},{"style":119},[567],{"type":93,"value":342},{"type":87,"tag":113,"props":569,"children":570},{"style":125},[571],{"type":93,"value":347},{"type":87,"tag":113,"props":573,"children":574},{"style":125},[575],{"type":93,"value":352},{"type":87,"tag":113,"props":577,"children":578},{"class":115,"line":42},[579,583],{"type":87,"tag":113,"props":580,"children":581},{"style":160},[582],{"type":93,"value":360},{"type":87,"tag":113,"props":584,"children":585},{"style":125},[586],{"type":93,"value":365},{"type":87,"tag":113,"props":588,"children":589},{"class":115,"line":32},[590],{"type":87,"tag":113,"props":591,"children":593},{"emptyLinePlaceholder":592},true,[594],{"type":93,"value":595},"\n",{"type":87,"tag":113,"props":597,"children":598},{"class":115,"line":14},[599],{"type":87,"tag":113,"props":600,"children":601},{"style":386},[602],{"type":93,"value":603},"# Development build\n",{"type":87,"tag":113,"props":605,"children":606},{"class":115,"line":78},[607,612],{"type":87,"tag":113,"props":608,"children":609},{"style":119},[610],{"type":93,"value":611},"cargo",{"type":87,"tag":113,"props":613,"children":614},{"style":125},[615],{"type":93,"value":616}," build\n",{"type":87,"tag":113,"props":618,"children":619},{"class":115,"line":264},[620],{"type":87,"tag":113,"props":621,"children":622},{"emptyLinePlaceholder":592},[623],{"type":93,"value":595},{"type":87,"tag":113,"props":625,"children":626},{"class":115,"line":302},[627],{"type":87,"tag":113,"props":628,"children":629},{"style":386},[630],{"type":93,"value":631},"# Optimized release build (LTO enabled — takes ~2 min)\n",{"type":87,"tag":113,"props":633,"children":635},{"class":115,"line":634},8,[636,640,645],{"type":87,"tag":113,"props":637,"children":638},{"style":119},[639],{"type":93,"value":611},{"type":87,"tag":113,"props":641,"children":642},{"style":125},[643],{"type":93,"value":644}," build",{"type":87,"tag":113,"props":646,"children":647},{"style":160},[648],{"type":93,"value":649}," --release\n",{"type":87,"tag":113,"props":651,"children":653},{"class":115,"line":652},9,[654],{"type":87,"tag":113,"props":655,"children":656},{"emptyLinePlaceholder":592},[657],{"type":93,"value":595},{"type":87,"tag":113,"props":659,"children":661},{"class":115,"line":660},10,[662],{"type":87,"tag":113,"props":663,"children":664},{"style":386},[665],{"type":93,"value":666},"# Run\n",{"type":87,"tag":113,"props":668,"children":670},{"class":115,"line":669},11,[671,677,682,687,692,696,701],{"type":87,"tag":113,"props":672,"children":674},{"style":673},"--shiki-default:#ADBAC7;--shiki-light:#24292E",[675],{"type":93,"value":676},"DATABASE_URL",{"type":87,"tag":113,"props":678,"children":679},{"style":476},[680],{"type":93,"value":681},"=",{"type":87,"tag":113,"props":683,"children":684},{"style":125},[685],{"type":93,"value":686},"\"postgres:\u002F\u002F...\"",{"type":87,"tag":113,"props":688,"children":689},{"style":673},[690],{"type":93,"value":691}," JWT_SECRET",{"type":87,"tag":113,"props":693,"children":694},{"style":476},[695],{"type":93,"value":681},{"type":87,"tag":113,"props":697,"children":698},{"style":125},[699],{"type":93,"value":700},"\"...\"",{"type":87,"tag":113,"props":702,"children":703},{"style":119},[704],{"type":93,"value":705}," .\u002Ftarget\u002Frelease\u002Fvaultaris\n",{"type":87,"tag":88,"props":707,"children":709},{"id":708},"option-5-kubernetes-helm",[710],{"type":93,"value":711},"Option 5 — Kubernetes \u002F Helm",{"type":87,"tag":96,"props":713,"children":714},{},[715,717,722],{"type":93,"value":716},"See the ",{"type":87,"tag":424,"props":718,"children":719},{"href":39},[720],{"type":93,"value":721},"Kubernetes guide",{"type":93,"value":723}," for the official Helm chart and manifests.",{"type":87,"tag":88,"props":725,"children":727},{"id":726},"database-setup",[728],{"type":93,"value":729},"Database setup",{"type":87,"tag":96,"props":731,"children":732},{},[733,735,741,743,749,751,757],{"type":93,"value":734},"Vaultaris ",{"type":87,"tag":736,"props":737,"children":738},"strong",{},[739],{"type":93,"value":740},"auto-migrates",{"type":93,"value":742}," on startup — no manual ",{"type":87,"tag":109,"props":744,"children":746},{"className":745},[],[747],{"type":93,"value":748},"sqlx migrate",{"type":93,"value":750}," step needed. Ensure the database user has ",{"type":87,"tag":109,"props":752,"children":754},{"className":753},[],[755],{"type":93,"value":756},"CREATE TABLE",{"type":93,"value":758}," privileges on first run.",{"type":87,"tag":96,"props":760,"children":761},{},[762,764,769,771,777,779,785],{"type":93,"value":763},"The minimum PostgreSQL version is ",{"type":87,"tag":736,"props":765,"children":766},{},[767],{"type":93,"value":768},"14",{"type":93,"value":770},". The ",{"type":87,"tag":109,"props":772,"children":774},{"className":773},[],[775],{"type":93,"value":776},"uuid-ossp",{"type":93,"value":778}," and ",{"type":87,"tag":109,"props":780,"children":782},{"className":781},[],[783],{"type":93,"value":784},"pgcrypto",{"type":93,"value":786}," extensions are used internally and are created automatically.",{"type":87,"tag":88,"props":788,"children":790},{"id":789},"verifying-the-installation",[791],{"type":93,"value":792},"Verifying the installation",{"type":87,"tag":102,"props":794,"children":796},{"className":104,"code":795,"language":106,"meta":82,"style":82},"curl http:\u002F\u002Flocalhost:8080\u002Fhealth\n# → {\"status\":\"healthy\",\"version\":\"0.8.0\",...}\n\ncurl http:\u002F\u002Flocalhost:8080\u002F.well-known\u002Fopenid-configuration\n# → OIDC discovery document\n",[797],{"type":87,"tag":109,"props":798,"children":799},{"__ignoreMap":82},[800,812,820,827,839],{"type":87,"tag":113,"props":801,"children":802},{"class":115,"line":8},[803,807],{"type":87,"tag":113,"props":804,"children":805},{"style":119},[806],{"type":93,"value":456},{"type":87,"tag":113,"props":808,"children":809},{"style":125},[810],{"type":93,"value":811}," http:\u002F\u002Flocalhost:8080\u002Fhealth\n",{"type":87,"tag":113,"props":813,"children":814},{"class":115,"line":42},[815],{"type":87,"tag":113,"props":816,"children":817},{"style":386},[818],{"type":93,"value":819},"# → {\"status\":\"healthy\",\"version\":\"0.8.0\",...}\n",{"type":87,"tag":113,"props":821,"children":822},{"class":115,"line":32},[823],{"type":87,"tag":113,"props":824,"children":825},{"emptyLinePlaceholder":592},[826],{"type":93,"value":595},{"type":87,"tag":113,"props":828,"children":829},{"class":115,"line":14},[830,834],{"type":87,"tag":113,"props":831,"children":832},{"style":119},[833],{"type":93,"value":456},{"type":87,"tag":113,"props":835,"children":836},{"style":125},[837],{"type":93,"value":838}," http:\u002F\u002Flocalhost:8080\u002F.well-known\u002Fopenid-configuration\n",{"type":87,"tag":113,"props":840,"children":841},{"class":115,"line":78},[842],{"type":87,"tag":113,"props":843,"children":844},{"style":386},[845],{"type":93,"value":846},"# → OIDC discovery document\n",{"type":87,"tag":848,"props":849,"children":850},"style",{},[851],{"type":93,"value":852},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}",{"title":82,"searchDepth":32,"depth":32,"links":854},[855,856,857,858,859,860,861],{"id":90,"depth":42,"text":94},{"id":311,"depth":42,"text":314},{"id":414,"depth":42,"text":417},{"id":528,"depth":42,"text":531},{"id":708,"depth":42,"text":711},{"id":726,"depth":42,"text":729},{"id":789,"depth":42,"text":792},"markdown","content:docs:installation.md","content","docs\u002Finstallation.md","docs\u002Finstallation","md",{"_path":29,"_dir":80,"_draft":81,"_partial":81,"_locale":82,"title":30,"description":31,"order":32,"category":33,"body":869,"_type":862,"_id":863,"_source":864,"_file":865,"_stem":866,"_extension":867},{"type":84,"children":870,"toc":1494},[871,875,879,900,904,1051,1055,1065,1135,1139,1149,1218,1227,1231,1247,1378,1382,1391,1395,1416,1437,1441,1490],{"type":87,"tag":88,"props":872,"children":873},{"id":90},[874],{"type":93,"value":94},{"type":87,"tag":96,"props":876,"children":877},{},[878],{"type":93,"value":100},{"type":87,"tag":102,"props":880,"children":881},{"className":104,"code":105,"language":106,"meta":82,"style":82},[882],{"type":87,"tag":109,"props":883,"children":884},{"__ignoreMap":82},[885],{"type":87,"tag":113,"props":886,"children":887},{"class":115,"line":8},[888,892,896],{"type":87,"tag":113,"props":889,"children":890},{"style":119},[891],{"type":93,"value":122},{"type":87,"tag":113,"props":893,"children":894},{"style":125},[895],{"type":93,"value":128},{"type":87,"tag":113,"props":897,"children":898},{"style":125},[899],{"type":93,"value":133},{"type":87,"tag":96,"props":901,"children":902},{},[903],{"type":93,"value":138},{"type":87,"tag":102,"props":905,"children":906},{"className":104,"code":141,"language":106,"meta":82,"style":82},[907],{"type":87,"tag":109,"props":908,"children":909},{"__ignoreMap":82},[910,929,944,959,974,1009,1044],{"type":87,"tag":113,"props":911,"children":912},{"class":115,"line":8},[913,917,921,925],{"type":87,"tag":113,"props":914,"children":915},{"style":119},[916],{"type":93,"value":122},{"type":87,"tag":113,"props":918,"children":919},{"style":125},[920],{"type":93,"value":157},{"type":87,"tag":113,"props":922,"children":923},{"style":160},[924],{"type":93,"value":163},{"type":87,"tag":113,"props":926,"children":927},{"style":166},[928],{"type":93,"value":169},{"type":87,"tag":113,"props":930,"children":931},{"class":115,"line":42},[932,936,940],{"type":87,"tag":113,"props":933,"children":934},{"style":160},[935],{"type":93,"value":177},{"type":87,"tag":113,"props":937,"children":938},{"style":125},[939],{"type":93,"value":182},{"type":87,"tag":113,"props":941,"children":942},{"style":166},[943],{"type":93,"value":169},{"type":87,"tag":113,"props":945,"children":946},{"class":115,"line":32},[947,951,955],{"type":87,"tag":113,"props":948,"children":949},{"style":160},[950],{"type":93,"value":194},{"type":87,"tag":113,"props":952,"children":953},{"style":125},[954],{"type":93,"value":199},{"type":87,"tag":113,"props":956,"children":957},{"style":166},[958],{"type":93,"value":169},{"type":87,"tag":113,"props":960,"children":961},{"class":115,"line":14},[962,966,970],{"type":87,"tag":113,"props":963,"children":964},{"style":160},[965],{"type":93,"value":211},{"type":87,"tag":113,"props":967,"children":968},{"style":125},[969],{"type":93,"value":216},{"type":87,"tag":113,"props":971,"children":972},{"style":166},[973],{"type":93,"value":169},{"type":87,"tag":113,"props":975,"children":976},{"class":115,"line":78},[977,981,985,989,993,997,1001,1005],{"type":87,"tag":113,"props":978,"children":979},{"style":160},[980],{"type":93,"value":211},{"type":87,"tag":113,"props":982,"children":983},{"style":125},[984],{"type":93,"value":232},{"type":87,"tag":113,"props":986,"children":987},{"style":119},[988],{"type":93,"value":237},{"type":87,"tag":113,"props":990,"children":991},{"style":125},[992],{"type":93,"value":242},{"type":87,"tag":113,"props":994,"children":995},{"style":160},[996],{"type":93,"value":247},{"type":87,"tag":113,"props":998,"children":999},{"style":160},[1000],{"type":93,"value":252},{"type":87,"tag":113,"props":1002,"children":1003},{"style":125},[1004],{"type":93,"value":257},{"type":87,"tag":113,"props":1006,"children":1007},{"style":166},[1008],{"type":93,"value":169},{"type":87,"tag":113,"props":1010,"children":1011},{"class":115,"line":264},[1012,1016,1020,1024,1028,1032,1036,1040],{"type":87,"tag":113,"props":1013,"children":1014},{"style":160},[1015],{"type":93,"value":211},{"type":87,"tag":113,"props":1017,"children":1018},{"style":125},[1019],{"type":93,"value":274},{"type":87,"tag":113,"props":1021,"children":1022},{"style":119},[1023],{"type":93,"value":237},{"type":87,"tag":113,"props":1025,"children":1026},{"style":125},[1027],{"type":93,"value":242},{"type":87,"tag":113,"props":1029,"children":1030},{"style":160},[1031],{"type":93,"value":247},{"type":87,"tag":113,"props":1033,"children":1034},{"style":160},[1035],{"type":93,"value":291},{"type":87,"tag":113,"props":1037,"children":1038},{"style":125},[1039],{"type":93,"value":257},{"type":87,"tag":113,"props":1041,"children":1042},{"style":166},[1043],{"type":93,"value":169},{"type":87,"tag":113,"props":1045,"children":1046},{"class":115,"line":302},[1047],{"type":87,"tag":113,"props":1048,"children":1049},{"style":125},[1050],{"type":93,"value":308},{"type":87,"tag":88,"props":1052,"children":1053},{"id":311},[1054],{"type":93,"value":314},{"type":87,"tag":96,"props":1056,"children":1057},{},[1058,1059,1064],{"type":93,"value":319},{"type":87,"tag":109,"props":1060,"children":1062},{"className":1061},[],[1063],{"type":93,"value":325},{"type":93,"value":327},{"type":87,"tag":102,"props":1066,"children":1067},{"className":104,"code":330,"language":106,"meta":82,"style":82},[1068],{"type":87,"tag":109,"props":1069,"children":1070},{"__ignoreMap":82},[1071,1086,1097,1116],{"type":87,"tag":113,"props":1072,"children":1073},{"class":115,"line":8},[1074,1078,1082],{"type":87,"tag":113,"props":1075,"children":1076},{"style":119},[1077],{"type":93,"value":342},{"type":87,"tag":113,"props":1079,"children":1080},{"style":125},[1081],{"type":93,"value":347},{"type":87,"tag":113,"props":1083,"children":1084},{"style":125},[1085],{"type":93,"value":352},{"type":87,"tag":113,"props":1087,"children":1088},{"class":115,"line":42},[1089,1093],{"type":87,"tag":113,"props":1090,"children":1091},{"style":160},[1092],{"type":93,"value":360},{"type":87,"tag":113,"props":1094,"children":1095},{"style":125},[1096],{"type":93,"value":365},{"type":87,"tag":113,"props":1098,"children":1099},{"class":115,"line":32},[1100,1104,1108,1112],{"type":87,"tag":113,"props":1101,"children":1102},{"style":119},[1103],{"type":93,"value":373},{"type":87,"tag":113,"props":1105,"children":1106},{"style":125},[1107],{"type":93,"value":378},{"type":87,"tag":113,"props":1109,"children":1110},{"style":125},[1111],{"type":93,"value":383},{"type":87,"tag":113,"props":1113,"children":1114},{"style":386},[1115],{"type":93,"value":389},{"type":87,"tag":113,"props":1117,"children":1118},{"class":115,"line":14},[1119,1123,1127,1131],{"type":87,"tag":113,"props":1120,"children":1121},{"style":119},[1122],{"type":93,"value":122},{"type":87,"tag":113,"props":1124,"children":1125},{"style":125},[1126],{"type":93,"value":401},{"type":87,"tag":113,"props":1128,"children":1129},{"style":125},[1130],{"type":93,"value":406},{"type":87,"tag":113,"props":1132,"children":1133},{"style":160},[1134],{"type":93,"value":411},{"type":87,"tag":88,"props":1136,"children":1137},{"id":414},[1138],{"type":93,"value":417},{"type":87,"tag":96,"props":1140,"children":1141},{},[1142,1143,1148],{"type":93,"value":422},{"type":87,"tag":424,"props":1144,"children":1146},{"href":426,"rel":1145},[428],[1147],{"type":93,"value":431},{"type":93,"value":433},{"type":87,"tag":102,"props":1150,"children":1151},{"className":104,"code":436,"language":106,"meta":82,"style":82},[1152],{"type":87,"tag":109,"props":1153,"children":1154},{"__ignoreMap":82},[1155,1162,1181,1196,1211],{"type":87,"tag":113,"props":1156,"children":1157},{"class":115,"line":8},[1158],{"type":87,"tag":113,"props":1159,"children":1160},{"style":386},[1161],{"type":93,"value":448},{"type":87,"tag":113,"props":1163,"children":1164},{"class":115,"line":42},[1165,1169,1173,1177],{"type":87,"tag":113,"props":1166,"children":1167},{"style":119},[1168],{"type":93,"value":456},{"type":87,"tag":113,"props":1170,"children":1171},{"style":160},[1172],{"type":93,"value":461},{"type":87,"tag":113,"props":1174,"children":1175},{"style":125},[1176],{"type":93,"value":466},{"type":87,"tag":113,"props":1178,"children":1179},{"style":166},[1180],{"type":93,"value":169},{"type":87,"tag":113,"props":1182,"children":1183},{"class":115,"line":32},[1184,1188,1192],{"type":87,"tag":113,"props":1185,"children":1186},{"style":476},[1187],{"type":93,"value":479},{"type":87,"tag":113,"props":1189,"children":1190},{"style":119},[1191],{"type":93,"value":484},{"type":87,"tag":113,"props":1193,"children":1194},{"style":125},[1195],{"type":93,"value":489},{"type":87,"tag":113,"props":1197,"children":1198},{"class":115,"line":14},[1199,1203,1207],{"type":87,"tag":113,"props":1200,"children":1201},{"style":119},[1202],{"type":93,"value":497},{"type":87,"tag":113,"props":1204,"children":1205},{"style":125},[1206],{"type":93,"value":502},{"type":87,"tag":113,"props":1208,"children":1209},{"style":125},[1210],{"type":93,"value":365},{"type":87,"tag":113,"props":1212,"children":1213},{"class":115,"line":78},[1214],{"type":87,"tag":113,"props":1215,"children":1216},{"style":119},[1217],{"type":93,"value":514},{"type":87,"tag":96,"props":1219,"children":1220},{},[1221,1222,1226],{"type":93,"value":519},{"type":87,"tag":424,"props":1223,"children":1224},{"href":20},[1225],{"type":93,"value":21},{"type":93,"value":525},{"type":87,"tag":88,"props":1228,"children":1229},{"id":528},[1230],{"type":93,"value":531},{"type":87,"tag":96,"props":1232,"children":1233},{},[1234,1235,1240,1241,1246],{"type":93,"value":536},{"type":87,"tag":424,"props":1236,"children":1238},{"href":539,"rel":1237},[428],[1239],{"type":93,"value":543},{"type":93,"value":545},{"type":87,"tag":109,"props":1242,"children":1244},{"className":1243},[],[1245],{"type":93,"value":551},{"type":93,"value":553},{"type":87,"tag":102,"props":1248,"children":1249},{"className":104,"code":556,"language":106,"meta":82,"style":82},[1250],{"type":87,"tag":109,"props":1251,"children":1252},{"__ignoreMap":82},[1253,1268,1279,1286,1293,1304,1311,1318,1333,1340,1347],{"type":87,"tag":113,"props":1254,"children":1255},{"class":115,"line":8},[1256,1260,1264],{"type":87,"tag":113,"props":1257,"children":1258},{"style":119},[1259],{"type":93,"value":342},{"type":87,"tag":113,"props":1261,"children":1262},{"style":125},[1263],{"type":93,"value":347},{"type":87,"tag":113,"props":1265,"children":1266},{"style":125},[1267],{"type":93,"value":352},{"type":87,"tag":113,"props":1269,"children":1270},{"class":115,"line":42},[1271,1275],{"type":87,"tag":113,"props":1272,"children":1273},{"style":160},[1274],{"type":93,"value":360},{"type":87,"tag":113,"props":1276,"children":1277},{"style":125},[1278],{"type":93,"value":365},{"type":87,"tag":113,"props":1280,"children":1281},{"class":115,"line":32},[1282],{"type":87,"tag":113,"props":1283,"children":1284},{"emptyLinePlaceholder":592},[1285],{"type":93,"value":595},{"type":87,"tag":113,"props":1287,"children":1288},{"class":115,"line":14},[1289],{"type":87,"tag":113,"props":1290,"children":1291},{"style":386},[1292],{"type":93,"value":603},{"type":87,"tag":113,"props":1294,"children":1295},{"class":115,"line":78},[1296,1300],{"type":87,"tag":113,"props":1297,"children":1298},{"style":119},[1299],{"type":93,"value":611},{"type":87,"tag":113,"props":1301,"children":1302},{"style":125},[1303],{"type":93,"value":616},{"type":87,"tag":113,"props":1305,"children":1306},{"class":115,"line":264},[1307],{"type":87,"tag":113,"props":1308,"children":1309},{"emptyLinePlaceholder":592},[1310],{"type":93,"value":595},{"type":87,"tag":113,"props":1312,"children":1313},{"class":115,"line":302},[1314],{"type":87,"tag":113,"props":1315,"children":1316},{"style":386},[1317],{"type":93,"value":631},{"type":87,"tag":113,"props":1319,"children":1320},{"class":115,"line":634},[1321,1325,1329],{"type":87,"tag":113,"props":1322,"children":1323},{"style":119},[1324],{"type":93,"value":611},{"type":87,"tag":113,"props":1326,"children":1327},{"style":125},[1328],{"type":93,"value":644},{"type":87,"tag":113,"props":1330,"children":1331},{"style":160},[1332],{"type":93,"value":649},{"type":87,"tag":113,"props":1334,"children":1335},{"class":115,"line":652},[1336],{"type":87,"tag":113,"props":1337,"children":1338},{"emptyLinePlaceholder":592},[1339],{"type":93,"value":595},{"type":87,"tag":113,"props":1341,"children":1342},{"class":115,"line":660},[1343],{"type":87,"tag":113,"props":1344,"children":1345},{"style":386},[1346],{"type":93,"value":666},{"type":87,"tag":113,"props":1348,"children":1349},{"class":115,"line":669},[1350,1354,1358,1362,1366,1370,1374],{"type":87,"tag":113,"props":1351,"children":1352},{"style":673},[1353],{"type":93,"value":676},{"type":87,"tag":113,"props":1355,"children":1356},{"style":476},[1357],{"type":93,"value":681},{"type":87,"tag":113,"props":1359,"children":1360},{"style":125},[1361],{"type":93,"value":686},{"type":87,"tag":113,"props":1363,"children":1364},{"style":673},[1365],{"type":93,"value":691},{"type":87,"tag":113,"props":1367,"children":1368},{"style":476},[1369],{"type":93,"value":681},{"type":87,"tag":113,"props":1371,"children":1372},{"style":125},[1373],{"type":93,"value":700},{"type":87,"tag":113,"props":1375,"children":1376},{"style":119},[1377],{"type":93,"value":705},{"type":87,"tag":88,"props":1379,"children":1380},{"id":708},[1381],{"type":93,"value":711},{"type":87,"tag":96,"props":1383,"children":1384},{},[1385,1386,1390],{"type":93,"value":716},{"type":87,"tag":424,"props":1387,"children":1388},{"href":39},[1389],{"type":93,"value":721},{"type":93,"value":723},{"type":87,"tag":88,"props":1392,"children":1393},{"id":726},[1394],{"type":93,"value":729},{"type":87,"tag":96,"props":1396,"children":1397},{},[1398,1399,1403,1404,1409,1410,1415],{"type":93,"value":734},{"type":87,"tag":736,"props":1400,"children":1401},{},[1402],{"type":93,"value":740},{"type":93,"value":742},{"type":87,"tag":109,"props":1405,"children":1407},{"className":1406},[],[1408],{"type":93,"value":748},{"type":93,"value":750},{"type":87,"tag":109,"props":1411,"children":1413},{"className":1412},[],[1414],{"type":93,"value":756},{"type":93,"value":758},{"type":87,"tag":96,"props":1417,"children":1418},{},[1419,1420,1424,1425,1430,1431,1436],{"type":93,"value":763},{"type":87,"tag":736,"props":1421,"children":1422},{},[1423],{"type":93,"value":768},{"type":93,"value":770},{"type":87,"tag":109,"props":1426,"children":1428},{"className":1427},[],[1429],{"type":93,"value":776},{"type":93,"value":778},{"type":87,"tag":109,"props":1432,"children":1434},{"className":1433},[],[1435],{"type":93,"value":784},{"type":93,"value":786},{"type":87,"tag":88,"props":1438,"children":1439},{"id":789},[1440],{"type":93,"value":792},{"type":87,"tag":102,"props":1442,"children":1443},{"className":104,"code":795,"language":106,"meta":82,"style":82},[1444],{"type":87,"tag":109,"props":1445,"children":1446},{"__ignoreMap":82},[1447,1458,1465,1472,1483],{"type":87,"tag":113,"props":1448,"children":1449},{"class":115,"line":8},[1450,1454],{"type":87,"tag":113,"props":1451,"children":1452},{"style":119},[1453],{"type":93,"value":456},{"type":87,"tag":113,"props":1455,"children":1456},{"style":125},[1457],{"type":93,"value":811},{"type":87,"tag":113,"props":1459,"children":1460},{"class":115,"line":42},[1461],{"type":87,"tag":113,"props":1462,"children":1463},{"style":386},[1464],{"type":93,"value":819},{"type":87,"tag":113,"props":1466,"children":1467},{"class":115,"line":32},[1468],{"type":87,"tag":113,"props":1469,"children":1470},{"emptyLinePlaceholder":592},[1471],{"type":93,"value":595},{"type":87,"tag":113,"props":1473,"children":1474},{"class":115,"line":14},[1475,1479],{"type":87,"tag":113,"props":1476,"children":1477},{"style":119},[1478],{"type":93,"value":456},{"type":87,"tag":113,"props":1480,"children":1481},{"style":125},[1482],{"type":93,"value":838},{"type":87,"tag":113,"props":1484,"children":1485},{"class":115,"line":78},[1486],{"type":87,"tag":113,"props":1487,"children":1488},{"style":386},[1489],{"type":93,"value":846},{"type":87,"tag":848,"props":1491,"children":1492},{},[1493],{"type":93,"value":852},{"title":82,"searchDepth":32,"depth":32,"links":1495},[1496,1497,1498,1499,1500,1501,1502],{"id":90,"depth":42,"text":94},{"id":311,"depth":42,"text":314},{"id":414,"depth":42,"text":417},{"id":528,"depth":42,"text":531},{"id":708,"depth":42,"text":711},{"id":726,"depth":42,"text":729},{"id":789,"depth":42,"text":792},1780603561415]