Enterprise documentation generator — point it at any repo (no upload) and get a branded, sign-off-ready Technical Design Document as PDF, editable Word (.docx) and Markdown, with full document control. Runs locally on your own key.
Project description
oneport-docgen
Enterprise documentation for any codebase — generated locally, never uploaded.
Point it at a repo and it produces a formal, sign-off-ready Technical Design
Document as a branded PDF, an editable Word (.docx) file, and
Markdown — with the full apparatus enterprises expect: cover page,
document-control table, revision history, classification banner, numbered
sections and an approval/sign-off page.
It reuses oneport-context's local
repo index (file → module → repo understanding), so your code never leaves the
machine. Runs on your own model key (Google Gemini free tier) or fully heuristic —
free and offline.
Quickstart
pip install oneport-docgen
oneport-docgen generate ./my-repo
You'll be asked for the title, version, classification and sign-off names (authors
are pre-filled from git). Out come three files in ./my-repo/.docgen/:
my-repo-technical-design-document.pdf # branded, ready to hand to an exec/auditor
my-repo-technical-design-document.docx # editable in Word / SharePoint
my-repo-technical-design-document.md # for the wiki / repo
Set a key for richer prose (optional):
export GEMINI_API_KEY=… # free key at aistudio.google.com/apikey
Without a key it still generates a complete, accurate document — module breakdown, tech stack and file inventory come straight from the code; only the narrative sections get shorter.
Commands
| Command | What it does |
|---|---|
generate ./repo |
Build the document (PDF + DOCX + Markdown) |
init |
Scaffold a docgen.toml branding file |
formats |
List output formats and document types |
Document types (--type)
| Type | Produces |
|---|---|
tdd (default) |
Technical Design Document — architecture, modules, data flow, setup |
sdd |
Software Design Description (same engine, formal title) |
onboarding |
Engineering Onboarding Guide |
sbom |
Software Bill of Materials — deterministic dependency + license inventory with risk findings |
oneport-docgen generate ./repo --type sbom # audit-grade dependency/license report
The SBOM is generated deterministically from your manifests (requirements.txt,
pyproject.toml, package.json, go.mod, Cargo.toml, Gemfile, composer.json,
pom.xml, Gradle) — no AI, fully auditable. For Python it resolves real versions
and licenses from installed metadata, and flags unpinned versions, unknown licenses and
copyleft components.
Useful flags
oneport-docgen generate ./repo \
--format pdf,docx \ # pick outputs (pdf, docx, md)
--scope module:services/billing \ # document just one module
--classification Internal \
--version 2.1 --status "In Review" \
--author "Ada Lovelace" --approver "Grace Hopper" \
-y # non-interactive (for CI)
Branding
oneport-docgen init # writes docgen.toml
[brand]
company = "Acme Corporation"
logo = "assets/logo.png"
primary = "#0F172A"
accent = "#4F46E5"
footer = "Confidential — internal distribution only"
Every generated document then carries your company name, logo and colours.
Where it's going
- Phase 1 — formal deliverable (shipped): branded PDF + editable DOCX + Markdown.
- Phase 2 — compliance doctypes (in progress):
--type sbomshipped; threat model and ADR log next. - Phase 3 — living docs:
oneport-docgen checkfails CI when the code and the document drift apart (every claim is provenance-linked to the source).
License
Apache-2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file oneport_docgen-0.1.0.tar.gz.
File metadata
- Download URL: oneport_docgen-0.1.0.tar.gz
- Upload date:
- Size: 29.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
685ab039b6a01283898c9f24cbb3fc7102f17ec76edaf8f6bc9534702c29eaf6
|
|
| MD5 |
c2505af54aa67b4c3182fb0e9891c67d
|
|
| BLAKE2b-256 |
5b0b2ad951d58f9e47f68248aaf01faa1d878f307077e5ff0b94afb065b6b43f
|
File details
Details for the file oneport_docgen-0.1.0-py3-none-any.whl.
File metadata
- Download URL: oneport_docgen-0.1.0-py3-none-any.whl
- Upload date:
- Size: 36.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f4bf326a80ab5c812aeb3a5f48146569716f424bc572b94639214b36cacb4b9
|
|
| MD5 |
7f90ca3d23c6e8107e92167e01f14751
|
|
| BLAKE2b-256 |
9d02b6bdc818cb9ade7008c128df5af694b792ced46458a4404292c58f7d59a0
|