develop
KofTwentyTwo/ci-policy: ci / fork-guard (push) Skipped
KofTwentyTwo/ci-policy: ci / gradle-0 (push) Skipped
KofTwentyTwo/ci-policy: ci / gradle-1 (push) Skipped
KofTwentyTwo/ci-policy: ci / java-docker-2 (push) Skipped
KofTwentyTwo/ci-policy: ci / java-maven-3 (push) Skipped
KofTwentyTwo/ci-policy: ci / manifests-4 (push) Skipped
KofTwentyTwo/ci-policy: ci / rust-6 (push) Skipped
KofTwentyTwo/ci-policy: ci / rust-7 (push) Skipped
KofTwentyTwo/ci-policy: ci / rust-8 (push) Skipped
KofTwentyTwo/ci-policy: ci / source-config-9 (push) Skipped
KofTwentyTwo/ci-policy: ci / not-enrolled (push) Skipped
KofTwentyTwo/ci-policy: native / fork-deny (push) Skipped
KofTwentyTwo/ci-policy: native / dotnet-0 (push) Skipped
KofTwentyTwo/ci-policy: native / swift-1 (push) Skipped
KofTwentyTwo/ci-policy: native / swift-2 (push) Skipped
KofTwentyTwo/ci-policy: native / swift-3 (push) Skipped
KofTwentyTwo/ci-policy: native / native-result (push) Successful in 15s
KofTwentyTwo/ci-policy: Shared Node CI / secrets (push) Successful in 37s
KofTwentyTwo/ci-policy: Shared Node CI / verify (push) Successful in 2m57s
KofTwentyTwo/ci-policy: Shared Node CI / gate (push) Successful in 30s
KofTwentyTwo/ci-policy: ci / node-5 (push) Successful in 3m37s
KofTwentyTwo/ci-policy: ci / ci-result (push) Successful in 10s
Forma
Publish Markdown documentation to Confluence. Keep your docs in Git, publish to Confluence automatically.
Features
- Directory structure becomes Confluence page hierarchy
- Multi-root mapping: publish multiple directories to different Confluence parents
- Idempotent updates via content properties (not title-based)
- Local lint command catches issues before publish
- GitHub Action for CI/CD integration
- Relative link conversion between pages
- Attachment upload (images, PDFs)
- Mermaid diagram support (auto-detects macro availability)
Installation
npm install -g forma-cli
Usage
# Lint locally (no API calls)
forma lint
# Preview changes
forma plan
# Publish to Confluence
forma publish
Configuration
Create .confluence-publish.yml in your repo root:
version: 1
confluence:
baseUrl: "https://YOURDOMAIN.atlassian.net/wiki"
spaceKey: "DOCS"
mappings:
- localRoot: "docs/architecture"
parentPageTitle: "Architecture"
- localRoot: "docs/guides"
parentPageTitle: "Guides"
publish:
include: ["**/*.md"]
exclude: ["**/node_modules/**", "**/.git/**"]
GitHub Action
- uses: kof22/forma@v1
env:
CONFLUENCE_EMAIL: ${{ secrets.CONFLUENCE_EMAIL }}
CONFLUENCE_API_TOKEN: ${{ secrets.CONFLUENCE_API_TOKEN }}
Project Structure
packages/
publisher/ # Core library
cli/ # CLI (forma command)
action/ # GitHub Action
License
MIT
Description
Forma - Structure your docs. Publish with confidence. Automate documentation publishing.
241 KiB
0 Stars
2 Watchers
0 Forks
Languages
TypeScript
96.2%
JavaScript
3.8%