Files
afilmory/apps/docs/src/routes.json
Innei 1c64070a5d feat: add GitHub Actions workflow for building and publishing core Docker image
- Introduced a new GitHub Actions workflow in `core-image.yml` to automate the build and publish process for the core Docker image.
- The workflow triggers on pushes to the main branch and supports manual dispatch.
- Configured steps for checking out the repository, setting up Docker Buildx, logging into the GitHub Container Registry, extracting Docker metadata, and building and pushing the Docker image.

Additionally, updated documentation to reflect changes in the deployment process, including a new section for multi-tenant SaaS deployment.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-23 20:22:23 +08:00

244 lines
7.2 KiB
JSON

[
{
"path": "/",
"title": "Overview",
"meta": {
"title": "Overview",
"description": "Deploy a photo gallery in minutes—no database required.",
"createdAt": "2025-07-20T22:35:03+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "1"
}
},
{
"path": "/builder/cli",
"title": "CLI & Run Modes",
"meta": {
"title": "CLI & Run Modes",
"description": "Per-run flags, concurrency behavior, and cluster vs worker execution.",
"createdAt": "2025-11-23T19:00:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "2"
}
},
{
"path": "/getting-started/quick-start",
"title": "Quick Start",
"meta": {
"title": "Quick Start",
"description": "Get your gallery running in about 5 minutes.",
"createdAt": "2025-11-14T22:20:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "2"
}
},
{
"path": "/architecture",
"title": "Architecture",
"meta": {
"title": "Architecture",
"description": "Understand how Afilmory works—static vs. SSR deployment modes.",
"createdAt": "2025-11-14T22:25:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "3"
}
},
{
"path": "/builder/config",
"title": "Configuration",
"meta": {
"title": "Configuration",
"description": "How to declare storage, system defaults, and plugins in builder.config.ts.",
"createdAt": "2025-11-23T19:00:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "3"
}
},
{
"path": "/builder/pipeline",
"title": "Processing Flow",
"meta": {
"title": "Processing Flow",
"description": "End-to-end pipeline, ordering, and incremental rules backed by the code.",
"createdAt": "2025-11-23T19:00:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "4"
}
},
{
"path": "/builder/plugins",
"title": "Plugins",
"meta": {
"title": "Plugins",
"description": "Lifecycle hooks, authoring a custom plugin, and built-in plugins.",
"createdAt": "2025-11-23T19:00:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "5"
}
},
{
"path": "/builder/built-ins",
"title": "Built-in Plugins",
"meta": {
"title": "Built-in Plugins",
"description": "Ready-to-use plugins shipped with the builder and how to configure them.",
"createdAt": "2025-11-23T19:35:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "6"
}
},
{
"path": "/storage/providers",
"title": "Storage Providers",
"meta": {
"title": "Storage Providers",
"description": "Choose a storage provider for your photo collection.",
"createdAt": "2025-11-14T22:40:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "30"
}
},
{
"path": "/storage/providers/s3",
"title": "S3 / S3-Compatible",
"meta": {
"title": "S3 / S3-Compatible",
"description": "Configure S3 or S3-compatible storage for your photo collection.",
"createdAt": "2025-11-14T22:10:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "32"
}
},
{
"path": "/storage/providers/b2",
"title": "B2 (Backblaze B2)",
"meta": {
"title": "B2 (Backblaze B2)",
"description": "Configure Backblaze B2 storage for cost-effective cloud storage.",
"createdAt": "2025-11-14T22:10:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "33"
}
},
{
"path": "/storage/providers/github",
"title": "GitHub Storage",
"meta": {
"title": "GitHub Storage",
"description": "Use a GitHub repository as photo storage for simple deployments.",
"createdAt": "2025-11-14T22:10:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "34"
}
},
{
"path": "/storage/providers/local",
"title": "Local Storage",
"meta": {
"title": "Local Storage",
"description": "Use local file system paths for development and self-hosting.",
"createdAt": "2025-11-14T22:10:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "35"
}
},
{
"path": "/storage/providers/eagle",
"title": "Eagle Storage",
"meta": {
"title": "Eagle Storage",
"description": "Publish directly from an Eagle 4 library with filtering support.",
"createdAt": "2025-11-14T22:10:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "36"
}
},
{
"path": "/builder",
"title": "Builder",
"meta": {
"title": "Builder",
"description": "Overview of the photo pipeline and how to choose the right entrypoint for your run.",
"createdAt": "2025-11-14T22:10:00+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "40"
}
},
{
"path": "/deployment",
"title": "Deployment",
"meta": {
"title": "Deployment",
"description": "Deploy your gallery to static hosting, SSR platforms, or Docker.",
"createdAt": "2025-07-20T22:35:03+08:00",
"lastModified": "2025-11-23T20:22:24+08:00",
"order": "50"
}
},
{
"path": "/deployment/docker",
"title": "Docker",
"meta": {
"title": "Docker",
"description": "Deploy Afilmory using Docker for consistent, containerized deployments.",
"createdAt": "2025-07-20T22:35:03+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "51"
}
},
{
"path": "/deployment/github-pages",
"title": "GitHub Pages",
"meta": {
"title": "GitHub Pages",
"description": "Deploy your gallery to GitHub Pages for free static hosting.",
"createdAt": "2025-07-20T22:35:03+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "52"
}
},
{
"path": "/deployment/cloudflare-pages",
"title": "Cloudflare Pages",
"meta": {
"title": "Cloudflare Pages",
"description": "Deploy your gallery to Cloudflare Pages for fast global CDN distribution.",
"createdAt": "2025-07-20T22:35:03+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "53"
}
},
{
"path": "/deployment/vercel",
"title": "Vercel",
"meta": {
"title": "Vercel",
"description": "Deploy your gallery to Vercel with server-side rendering support.",
"createdAt": "2025-07-20T22:35:03+08:00",
"lastModified": "2025-11-23T19:40:52+08:00",
"order": "54"
}
},
{
"path": "/deployment/saas",
"title": "Advanced SaaS Deployment",
"meta": {
"title": "Advanced SaaS Deployment",
"description": "Run the full multi-tenant stack (API + OAuth gateway) with subdomains and custom domains.",
"createdAt": "2025-11-23T19:50:00+08:00",
"lastModified": "2025-11-23T20:22:24+08:00",
"order": "60"
}
},
{
"path": "/docs-site",
"title": "Docs Site",
"meta": {
"title": "Docs Site",
"description": "Docs site introduction and contribution guide",
"createdAt": "2025-09-11T17:05:55+08:00",
"lastModified": "2025-11-23T20:22:24+08:00",
"order": "90"
}
}
]