mirror of
https://github.com/stack-auth/stack.git
synced 2026-06-04 21:04:37 +08:00
## Summary Refreshes the docs around Stack Auth setup, CLI workflows, local development, the local emulator, known SDK errors, self-hosting, and the public showcase. This also wires the new docs into Mintlify navigation and normalizes `sharp` dependency resolution for docs/image tooling. Base: `dev` -> Head: `docs-mintlify/updates` Scope: 17 files, +1154 / -435 ## What's New - Adds a dedicated **Stack CLI** guide covering install, auth, init modes, project commands, config pull/push, `stack exec`, and emulator commands. - Adds a full **Local Emulator** guide for QEMU requirements, ports, default credentials, config-file backed projects, image pulls, state, and troubleshooting. - Reworks **Local Development** around two supported workflows: cloud-backed local dev and emulator-backed local dev, including app env vars, local config files, CI usage, and common failure modes. - Rewrites **Self-host** around the supported `stackauth/server` Docker deployment path, including Postgres, ClickHouse, cron scheduling, seeded admin access, reverse proxy setup, SDK env vars, email, webhooks, S3 storage, upgrades, and common issues. - Adds a **Known Errors** reference for public SDK-exposed known errors, runtime `errorCode` values, and REST API handling. - Clarifies **CLI App Authentication** so users can distinguish authenticating their own CLI app from using the official `stack` command. - Updates the JWT guide to remove the missing inline viewer reference and recommend an external JWT viewer. - Adds showcase cards for Browser Use and Overworld with supporting images and styles. - Pins `sharp` to `0.34.5` through pnpm overrides and lockfile cleanup. ## Review Notes - The self-host guide was audited against the current Docker entrypoint, server env templates, seed script, ClickHouse migration behavior, cron endpoints, and SDK API URL env resolution. - The Docker image starts the backend and dashboard, but not production schedulers, so the new cron section is called out explicitly. - Managed Domain email setup is documented as operator-managed because it depends on server-side Resend/DNSimple credentials; self-hosters are directed toward Custom SMTP or their own Resend API key. - `self-host-old.mdx` is kept as a legacy reference file and is not added to navigation. - `emulator run` documentation now matches CLI behavior: it stops the emulator only when it started that emulator instance. ## Test Plan - [x] Reviewed all files changed by `origin/dev...HEAD`. - [x] Ran `git diff --check origin/dev...HEAD`. - [x] Checked IDE diagnostics for the changed docs/CLI files. - [ ] Preview Mintlify docs locally and click through new navigation entries. - [ ] Verify showcase cards and images in light and dark themes. - [ ] Smoke-test the copied self-host commands in a non-production Docker environment. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Added comprehensive Stack CLI, Local Emulator, Known Errors, and Local Development guides * Restructured Self-Hosting guide for production deployments and expanded authentication docs * Updated site navigation to include new guide pages * **New Features** * Added visual showcase section with responsive cards and hover/zoom interactions (and supporting styles) <!-- end of auto-generated comment: release notes by coderabbit.ai -->
236 lines
7.1 KiB
JSON
236 lines
7.1 KiB
JSON
{
|
|
"$schema": "https://mintlify.com/docs.json",
|
|
"name": "Stack Auth Documentation",
|
|
"theme": "mint",
|
|
"logo": {
|
|
"dark": "/images/logo-dark.svg",
|
|
"light": "/images/logo-light.svg"
|
|
},
|
|
"favicon": "/images/favicon.ico",
|
|
"colors": {
|
|
"primary": "#6b5df7",
|
|
"light": "#8b7cf9",
|
|
"dark": "#6b5df7"
|
|
},
|
|
"background": {
|
|
"color": {
|
|
"dark": "#09090b"
|
|
}
|
|
},
|
|
"fonts": {
|
|
"heading": {
|
|
"family": "Geist",
|
|
"weight": 500
|
|
},
|
|
"body": {
|
|
"family": "Geist",
|
|
"weight": 400
|
|
}
|
|
},
|
|
"navbar": {
|
|
"links": [
|
|
{
|
|
"type": "github",
|
|
"href": "https://github.com/hexclave/stack-auth"
|
|
}
|
|
],
|
|
"primary": {
|
|
"type": "button",
|
|
"label": "Dashboard",
|
|
"href": "https://app.stack-auth.com"
|
|
}
|
|
},
|
|
"navigation": {
|
|
"tabs": [
|
|
{
|
|
"tab": "Documentation",
|
|
"pages": [
|
|
"index",
|
|
"guides/faq",
|
|
{
|
|
"group": "Getting Started",
|
|
"pages": [
|
|
"guides/getting-started/setup",
|
|
"guides/getting-started/user-fundamentals",
|
|
"guides/getting-started/ai-integration"
|
|
]
|
|
},
|
|
{
|
|
"group": "Going Further",
|
|
"pages": [
|
|
"guides/going-further/stack-app",
|
|
"guides/going-further/backend-integration",
|
|
"guides/going-further/cli",
|
|
"guides/going-further/local-emulator",
|
|
"guides/going-further/local-development",
|
|
"guides/going-further/user-metadata"
|
|
]
|
|
},
|
|
{
|
|
"group": "Apps",
|
|
"pages": [
|
|
{
|
|
"group": "Authentication",
|
|
"icon": "/images/app-icons/authentication.svg",
|
|
"pages": [
|
|
"guides/apps/authentication/overview",
|
|
"guides/apps/authentication/user-onboarding",
|
|
"guides/apps/authentication/connected-accounts",
|
|
"guides/apps/authentication/jwts",
|
|
"guides/apps/authentication/sign-up-rules",
|
|
"guides/apps/authentication/cli-authentication",
|
|
{
|
|
"group": "All Auth Providers",
|
|
"root": "guides/apps/authentication/auth-providers",
|
|
"pages": [
|
|
"guides/apps/authentication/auth-providers/apple",
|
|
"guides/apps/authentication/auth-providers/bitbucket",
|
|
"guides/apps/authentication/auth-providers/discord",
|
|
"guides/apps/authentication/auth-providers/facebook",
|
|
"guides/apps/authentication/auth-providers/github",
|
|
"guides/apps/authentication/auth-providers/gitlab",
|
|
"guides/apps/authentication/auth-providers/google",
|
|
"guides/apps/authentication/auth-providers/linkedin",
|
|
"guides/apps/authentication/auth-providers/microsoft",
|
|
"guides/apps/authentication/auth-providers/passkey",
|
|
"guides/apps/authentication/auth-providers/spotify",
|
|
"guides/apps/authentication/auth-providers/twitch",
|
|
"guides/apps/authentication/auth-providers/two-factor-auth",
|
|
"guides/apps/authentication/auth-providers/x-twitter"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"guides/apps/emails/overview",
|
|
"guides/apps/payments/overview",
|
|
"guides/apps/analytics/overview",
|
|
{
|
|
"group": "Teams",
|
|
"icon": "/images/app-icons/teams.svg",
|
|
"pages": [
|
|
"guides/apps/teams/overview",
|
|
"guides/apps/teams/team-selection"
|
|
]
|
|
},
|
|
"guides/apps/fraud-protection/overview",
|
|
"guides/apps/rbac/overview",
|
|
"guides/apps/api-keys/overview",
|
|
"guides/apps/data-vault/overview",
|
|
"guides/apps/webhooks/overview",
|
|
"guides/apps/launch-checklist/overview"
|
|
]
|
|
},
|
|
{
|
|
"group": "Integrations",
|
|
"pages": [
|
|
"guides/integrations/tanstack-start/overview",
|
|
"guides/integrations/supabase/overview",
|
|
"guides/integrations/convex/overview",
|
|
"guides/integrations/vercel/overview"
|
|
]
|
|
},
|
|
{
|
|
"group": "Other",
|
|
"pages": [
|
|
"guides/other/self-host",
|
|
"guides/other/known-errors",
|
|
"guides/other/mcp-setup",
|
|
{
|
|
"group": "Tutorials",
|
|
"pages": [
|
|
"guides/other/tutorials/build-a-saas-with-stack-auth",
|
|
"guides/other/tutorials/build-a-team-based-app",
|
|
"guides/other/tutorials/ship-production-ready-auth"
|
|
]
|
|
},
|
|
"guides/other/showcase"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"tab": "SDK Reference",
|
|
"pages": [
|
|
"sdk/overview",
|
|
{
|
|
"group": "Objects",
|
|
"pages": ["sdk/objects/stack-app"]
|
|
},
|
|
{
|
|
"group": "Types",
|
|
"pages": [
|
|
"sdk/types/user",
|
|
"sdk/types/team",
|
|
"sdk/types/team-user",
|
|
"sdk/types/team-permission",
|
|
"sdk/types/team-profile",
|
|
"sdk/types/contact-channel",
|
|
"sdk/types/email",
|
|
"sdk/types/api-key",
|
|
"sdk/types/project",
|
|
"sdk/types/connected-account",
|
|
"sdk/types/item",
|
|
"sdk/types/customer"
|
|
]
|
|
},
|
|
{
|
|
"group": "Hooks",
|
|
"pages": ["sdk/hooks/use-stack-app", "sdk/hooks/use-user"]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"tab": "REST API",
|
|
"pages": [
|
|
"api/overview",
|
|
{
|
|
"group": "Client API",
|
|
"openapi": {
|
|
"source": "openapi/client.json",
|
|
"directory": "api/client"
|
|
}
|
|
},
|
|
{
|
|
"group": "Server API",
|
|
"openapi": {
|
|
"source": "openapi/server.json",
|
|
"directory": "api/server"
|
|
}
|
|
},
|
|
{
|
|
"group": "Admin API",
|
|
"openapi": {
|
|
"source": "openapi/admin.json",
|
|
"directory": "api/admin",
|
|
"hidden": "true"
|
|
}
|
|
},
|
|
{
|
|
"group": "Webhooks",
|
|
"openapi": {
|
|
"source": "openapi/webhooks.json",
|
|
"directory": "api/webhooks"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"footer": {
|
|
"socials": {
|
|
"x": "https://x.com/stack_auth",
|
|
"github": "https://github.com/stack-auth/stack",
|
|
"discord": "https://discord.stack-auth.com"
|
|
}
|
|
},
|
|
"seo": {
|
|
"metatags": {
|
|
"robots": "noindex"
|
|
}
|
|
},
|
|
"settings": {
|
|
"customScripts": ["/apps-sidebar-filter.js"]
|
|
},
|
|
"redirects": []
|
|
}
|