Skip to content

Configuration

rup.config.json sits in the project root. init creates it; every key is optional because the defaults below apply.

rup.config.json
{
  "project": "my-project",
  "outDir": "docs/rup",
  "docLanguage": "en",
  "codeRoot": "src",
  "paths": {
    "domain": "00-domain-model",
    "requirements": "01-requirements",
    "analysis": "02-analysis",
    "design": "03-design",
    "implementation": "04-implementation",
    "quality": "05-quality"
  },
  "useCaseDir": "use-cases",
  "plantuml": { "url": "http://127.0.0.1:8085", "timeoutMs": 30000 },
  "diagrams": { "language": "plantuml", "outputs": ["svg"] },
  "ids": { "requirement": "RF", "nonFunctional": "RNF", "useCase": "UC", "rule": "RN", "decision": "DEC", "test": "TC" },
  "targetStack": { "language": "", "framework": "", "persistence": "", "testing": "" }
}

Keys

Key Default Edition Meaning
project folder name Free Name used in titles
outDir docs/rup Free Root of the documentation, relative to the project root
docLanguage en Free Language of the documents. File names, IDs, front-matter keys and PlantUML identifiers stay in English
codeRoot . Pro Where the code lives; read by scan and by code generation
paths.* numbered folders Free Folder name of each discipline under outDir
useCaseDir use-cases Free Subfolder that holds one folder per use case
plantuml.url http://127.0.0.1:8085 Free Address of the PlantUML server
plantuml.timeoutMs 30000 Free Time allowed for one render request
diagrams.language plantuml Free plantuml. Pro: also mermaid
diagrams.outputs ["svg"] Free svg. Pro: also png and html
ids.* RF, RNF, UC, RN, DEC, TC Free Prefixes of the stable identifiers
targetStack empty Pro Language, framework, persistence and testing of the code to generate
traceTag @rup Pro Doc-comment tag that links code to a model element
theme.preset default Pro Palette name
theme.colors.* none Pro Color overrides; levels takes exactly four colors
theme.font system font stack Pro Font family of the diagrams
theme.fontSize 14 Pro Font size in points
theme.roundCorner 6 Pro Corner radius of boxes
mermaid.image pinned image Pro Container image that draws Mermaid
mermaid.timeoutMs 180000 Pro Time allowed for a Mermaid batch

Precedence

Flags override the file, and the file overrides the defaults:

flags  >  rup.config.json  >  defaults

config prints the resolved result.

Changing paths on an existing project

Changing paths or outDir after documents exist means moving the folders and fixing the links. Do it as one explicit step and run check afterwards.

Pro settings in the free edition

The free edition does not ignore a Pro setting silently. A Mermaid language or a non-svg output in the file, or any --theme, --font, --color-* or --preview-png flag, stops the command with a message that names Pro. theme and mermaid keys are only read by Pro.