Create pal-enterprises-docs RoR repo #12

Open
opened 2026-05-09 20:11:30 +00:00 by forgejo_admin · 0 comments
Contributor

Type

Feature

Lineage

Standalone — implements the -docs surface per convention-client-project-structure. This is the first deliverable for any client, and pal-enterprises dogfoods it.

Repo

New repo: ldraney/pal-enterprises-docs

User Story

As a client logged into pal-enterprises
I want to click my -docs link and see rendered project documentation with diagrams
So that Lucas, AI, and I share a common understanding of user stories and system architecture before any code ships

Context

Per convention-client-project-structure, docs are built FIRST. The -docs surface is a separate RoR repo (not a route in pal-enterprises). It renders markdown + mermaid diagrams behind Keycloak auth. Uses plain CSS via ~/ror-css-guide (no Tailwind). The docs/ directory in the pal-enterprises repo contains the content — this new repo renders it as a web app.

For pal-enterprises specifically, this is the platform vision document — what pal-enterprises is, its architecture, the four-surface convention, and the client onboarding flow.

File Targets

New repo scaffold:

  • Gemfile — Rails 8.1, markdown rendering gem (redcarpet or commonmarker), no Tailwind
  • app/controllers/docs_controller.rb — renders markdown from content directory
  • app/views/layouts/application.html.erb — plain CSS layout per ror-css-guide
  • app/assets/stylesheets/ — CSS following ~/ror-css-guide conventions (design tokens, mobile-first)
  • config/routes.rb/ renders index, /:slug renders individual docs
  • Dockerfile — production build
  • .woodpecker.yaml — CI pipeline
  • k8s/dev.yaml — dev deployment with hostPath mount
  • content/ — markdown + mermaid source files (or symlink to pal-enterprises/docs/)

Acceptance Criteria

  • Fresh RoR repo on Forgejo at ldraney/pal-enterprises-docs
  • Renders markdown with mermaid diagram support (client-side mermaid.js)
  • Styled with plain CSS per ~/ror-css-guide (no Tailwind)
  • Behind Keycloak auth (pal-enterprises realm)
  • Dev overlay deploys to pal-enterprises-docs.tail5b443a.ts.net
  • Navigation between docs pages

Test Expectations

  • Integration test: authenticated user can access docs
  • Integration test: unauthenticated user redirected to login
  • Run command: bin/rails test

Constraints

  • NO Tailwind — plain CSS only, following ~/ror-css-guide
  • Separate repo, not a route in pal-enterprises
  • Keycloak auth via omniauth-openid-connect
  • Follow ~/ror patterns for deployment (hostPath, gem-cache PVC, Tailscale funnel)

Checklist

  • Repo created on Forgejo
  • Dev deployment working
  • Auth working
  • Docs rendering with mermaid
  • No unrelated changes
  • convention-client-project-structure — docs-first build order
  • project-pal-enterprises
  • ~/ror-css-guide — CSS conventions
  • ~/ror — Rails learning reference
### Type Feature ### Lineage Standalone — implements the `-docs` surface per `convention-client-project-structure`. This is the first deliverable for any client, and pal-enterprises dogfoods it. ### Repo New repo: `ldraney/pal-enterprises-docs` ### User Story As a client logged into pal-enterprises I want to click my `-docs` link and see rendered project documentation with diagrams So that Lucas, AI, and I share a common understanding of user stories and system architecture before any code ships ### Context Per `convention-client-project-structure`, docs are built FIRST. The `-docs` surface is a separate RoR repo (not a route in pal-enterprises). It renders markdown + mermaid diagrams behind Keycloak auth. Uses plain CSS via `~/ror-css-guide` (no Tailwind). The `docs/` directory in the pal-enterprises repo contains the content — this new repo renders it as a web app. For pal-enterprises specifically, this is the platform vision document — what pal-enterprises is, its architecture, the four-surface convention, and the client onboarding flow. ### File Targets New repo scaffold: - `Gemfile` — Rails 8.1, markdown rendering gem (redcarpet or commonmarker), no Tailwind - `app/controllers/docs_controller.rb` — renders markdown from content directory - `app/views/layouts/application.html.erb` — plain CSS layout per ror-css-guide - `app/assets/stylesheets/` — CSS following ~/ror-css-guide conventions (design tokens, mobile-first) - `config/routes.rb` — `/` renders index, `/:slug` renders individual docs - `Dockerfile` — production build - `.woodpecker.yaml` — CI pipeline - `k8s/dev.yaml` — dev deployment with hostPath mount - `content/` — markdown + mermaid source files (or symlink to pal-enterprises/docs/) ### Acceptance Criteria - [ ] Fresh RoR repo on Forgejo at `ldraney/pal-enterprises-docs` - [ ] Renders markdown with mermaid diagram support (client-side mermaid.js) - [ ] Styled with plain CSS per ~/ror-css-guide (no Tailwind) - [ ] Behind Keycloak auth (pal-enterprises realm) - [ ] Dev overlay deploys to `pal-enterprises-docs.tail5b443a.ts.net` - [ ] Navigation between docs pages ### Test Expectations - [ ] Integration test: authenticated user can access docs - [ ] Integration test: unauthenticated user redirected to login - Run command: `bin/rails test` ### Constraints - NO Tailwind — plain CSS only, following ~/ror-css-guide - Separate repo, not a route in pal-enterprises - Keycloak auth via omniauth-openid-connect - Follow ~/ror patterns for deployment (hostPath, gem-cache PVC, Tailscale funnel) ### Checklist - [ ] Repo created on Forgejo - [ ] Dev deployment working - [ ] Auth working - [ ] Docs rendering with mermaid - [ ] No unrelated changes ### Related - `convention-client-project-structure` — docs-first build order - `project-pal-enterprises` - `~/ror-css-guide` — CSS conventions - `~/ror` — Rails learning reference
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/pal-enterprises#12
No description provided.