add full documentation tab on zinit_ui #46
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
use bootstrap
get the content from
/Volumes/T7/codehero/forge.ourworld.tf/geomind_code/zinit/docs
furst update those docs in relation to implementation
make nice to understand documentation
purpose of the objects
how they relate to each other
how to use them
also how to use rust code through SDK
how to use the command line
basically a full blow documentation feature inside
Implementation Spec for Issue #46: Documentation Tab for zinit_ui
Objective
Add a full-featured "Docs" tab to the zinit web admin dashboard that renders comprehensive, well-structured documentation about zinit — covering concepts, object relationships, CLI usage, SDK/Rust usage, service specs, configuration paths, and the OpenRPC API. Documentation content is embedded at compile time and rendered client-side from Markdown to HTML using Bootstrap styling.
Requirements
bi-book)tab-docspane with sidebar navigation and content arearust-embed(same pattern as static assets)#docs/sdk.md)Files to Modify/Create
crates/zinit_ui/docs/*.md— 10 documentation files (new/improved)crates/zinit_ui/static/js/marked.min.js— Vendored Markdown renderercrates/zinit_ui/src/assets.rs— Add DocAssets embed structcrates/zinit_ui/src/routes.rs— Add/api/docsand/api/docs/{name}routescrates/zinit_ui/templates/base.html— Add Docs tab button + script tagcrates/zinit_ui/templates/index.html— Add docs tab pane HTMLcrates/zinit_ui/static/css/dashboard.css— Docs layout/typography stylescrates/zinit_ui/static/js/dashboard.js— Docs sidebar, loading, rendering logiccrates/zinit_ui/scripts/download-assets.sh— Add marked.js download entryImplementation Plan
Step 1: Write and improve documentation Markdown files
Files:
crates/zinit_ui/docs/(10 files)Dependencies: none
Step 2: Add marked.min.js library
Files:
crates/zinit_ui/static/js/marked.min.jsDependencies: none
Step 3: Add embedded docs asset struct and API route
Files:
crates/zinit_ui/src/assets.rs,crates/zinit_ui/src/routes.rsDependencies: Step 1 (docs files must exist)
Step 4: Add Docs tab button to base.html
Files:
crates/zinit_ui/templates/base.htmlDependencies: Step 2
Step 5: Add Docs tab pane to index.html
Files:
crates/zinit_ui/templates/index.htmlDependencies: none
Step 6: Add docs CSS styles
Files:
crates/zinit_ui/static/css/dashboard.cssDependencies: none
Step 7: Add docs JavaScript logic
Files:
crates/zinit_ui/static/js/dashboard.jsDependencies: Steps 4, 5, 6
Step 8: Update download-assets.sh
Files:
crates/zinit_ui/scripts/download-assets.shDependencies: none
Acceptance Criteria
#docs/sdk.md)Notes
rust-embedalready a dependency — just adding a second structBuild & Test Results
cargo build -p zinit_ui— Success (compiled in 25s)cargo test -p zinit_ui— 0 passed, 0 failed (no unit tests in this crate)Changes Summary
New Files (12)
crates/zinit_ui/docs/— 10 Markdown documentation files (overview, cli, cli_reference, sdk, sdk_examples, service_specs, paths, builders, api, database)crates/zinit_ui/static/js/marked.min.js— Vendored Markdown renderer (~35KB)Modified Files (6)
crates/zinit_ui/src/assets.rs— Added DocAssets rust-embed structcrates/zinit_ui/src/routes.rs— Added /api/docs and /api/docs/{name} routescrates/zinit_ui/templates/base.html— Added Docs tab button + marked.js scriptcrates/zinit_ui/templates/index.html— Added docs tab pane HTMLcrates/zinit_ui/static/css/dashboard.css— Added docs layout/typography stylescrates/zinit_ui/static/js/dashboard.js— Added docs sidebar, loading, rendering, deep-link logiccrates/zinit_ui/scripts/download-assets.sh— Added marked.js download entryImplementation committed:
af1bd42Browse:
af1bd42