mirror of
https://github.com/stack-auth/stack.git
synced 2026-06-04 21:04:37 +08:00
## Summary
This PR improves the documentation for GitHub authentication setup and
self-hosting.
## Changes
### GitHub OAuth/App Setup Guide
- Updated
[github.mdx](cci:7://file:///Users/madison/source/stack-auth/docs/content/docs/%28guides%29/concepts/auth-providers/github.mdx:0:0-0:0)
with clearer instructions differentiating between **GitHub OAuth App**
and **GitHub App** setup
- Added better explanations for when to use each option
### Self-Hosting Documentation
- Added prominent danger warning about self-hosting responsibilities
- Migrated inline shell commands to structured code examples using
[PlatformCodeblock](cci:1://file:///Users/madison/source/stack-auth/docs/src/components/mdx/platform-codeblock.tsx:242:0-673:1)
component
- Created
[docs/code-examples/self-host.ts](cci:7://file:///Users/madison/source/stack-auth/docs/code-examples/self-host.ts:0:0-0:0)
with all self-hosting commands
### Info Component
- Added new `danger` type for critical warnings with red accent styling
- Updated component styling with modern left accent bar and gradient
backgrounds
### PlatformCodeblock Component
- Added `hidePlatformSelector` prop to hide platform dropdown for
single-platform code examples
- Added Shell platform support for terminal commands (Docker, Git, pnpm)
- Filtered Shell platform from user-selectable options in both the
codeblock and header selectors
### Platform Config
- Added Shell platform with Docker, Git, and pnpm frameworks
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added comprehensive self-hosting and authentication customization
example collections for copy-paste use.
* New "danger" info style with visual accent for important warnings.
* **Documentation**
* GitHub integration guide now centers on GitHub App with an alternate
OAuth path retained.
* Replaced many inline snippets with platform-driven code blocks and
improved platform/framework selector behavior (single-platform
optimization; option to hide selector).
* Pages now surface "Last updated" above descriptions.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
29 lines
1.1 KiB
TypeScript
29 lines
1.1 KiB
TypeScript
import { CodeExample } from '../lib/code-examples';
|
|
import { apiKeysExamples } from './api-keys';
|
|
import { customizationExamples } from './customization';
|
|
import { paymentsExamples } from './payments';
|
|
import { selfHostExamples } from './self-host';
|
|
import { setupExamples } from './setup';
|
|
import { viteExamples } from './vite-example';
|
|
|
|
const allExamples: Record<string, Record<string, Record<string, CodeExample[]>>> = {
|
|
'setup': setupExamples,
|
|
'apps': {...apiKeysExamples, ...paymentsExamples },
|
|
'getting-started': viteExamples,
|
|
'others': selfHostExamples,
|
|
'customization': customizationExamples,
|
|
};
|
|
|
|
export function getExample(documentPath: string, exampleName: string): CodeExample[] | undefined {
|
|
const [section, ...rest] = documentPath.split('/');
|
|
const subsection = rest.join('/');
|
|
return allExamples[section]?.[subsection]?.[exampleName];
|
|
}
|
|
|
|
export function getDocumentExamples(documentPath: string): Record<string, CodeExample[]> | undefined {
|
|
const [section, ...rest] = documentPath.split('/');
|
|
const subsection = rest.join('/');
|
|
return allExamples[section]?.[subsection];
|
|
}
|
|
|