diff --git a/README.md b/README.md index 9bca1c5..3f03057 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ Any push to the `main` branch will trigger an automatic build and deployment. - **Live Site**: https://libredb.github.io - **Main Project**: https://github.com/libredb/libredb-studio -- **Live Demo**: https://demo.libredb.studio +- **Live Demo**: https://app.libredb.org - **LinkedIn**: https://www.linkedin.com/company/libredb ## License diff --git a/docs/designs/2026-06-23-deploy-unify-design.md b/docs/designs/2026-06-23-deploy-unify-design.md new file mode 100644 index 0000000..0e1e782 --- /dev/null +++ b/docs/designs/2026-06-23-deploy-unify-design.md @@ -0,0 +1,139 @@ +# Unify Deploy — single-source content, consistent IDE shell (B2) + +> Problem: `/deploy` (a Google-indexed URL) renders as a classic centered +> Header/Footer page, while the homepage Explorer→deploy shows a sparse IDE +> result-set teaser. Two different approaches AND two different content depths. +> Goal: one rich deploy content authored ONCE, shown in the SAME IDE shell both +> on the homepage `#deploy` section and at `/deploy` — without losing `/deploy`'s +> SEO and without duplicating content or the shell. + +## Decisions (locked with user, 2026-06-23) +- **B2**: keep `/deploy` as a real, indexed page (do NOT redirect — it's indexed; + a hash `/#deploy` is not a separate indexable URL, so redirecting would + consolidate `/deploy` into the homepage and drop the dedicated URL). +- **Single source, hard requirement**: the deploy *content* is authored exactly + once (in `DeploySection.astro`) and rendered from two places. No second copy. +- **Shared shell**: extract the IDE chrome into `StudioShell.astro` so both pages + use one shell (no shell duplication either). +- Scope: deploy only. Other sub-pages (`/docker-compose-example`, + `/privacy-policy`, `/404`) keep Header/Footer for now (separate future pass). + +## Architecture + +### 1. `StudioShell.astro` (NEW) — the one IDE chrome +Extracts what `index.astro` currently inlines: desktop `TopBar`, `MobileTopBar`, +the workbench (` diff --git a/src/components/studio/StatusBar.astro b/src/components/studio/StatusBar.astro index 2536829..34323d6 100644 --- a/src/components/studio/StatusBar.astro +++ b/src/components/studio/StatusBar.astro @@ -1,6 +1,8 @@ --- import { sectionById } from '../../data/sections'; -const home = sectionById['home']; +interface Props { active?: string; } +const { active = 'home' } = Astro.props; +const meta = sectionById[active] ?? sectionById['home']; ---