Skip to content
Esc
navigateopen⌘Jpreview
On this page

Profiles

Understand how one complete, versioned Profile determines repository-wide documentation policy.

A Profile is a complete repository-wide documentation policy. It contains Rules, defaults, Templates, Documentation Directories, Root Documents, Document Types, Index Policies, and declarative requirements.

One complete policy

Presswork applies one Profile identity to a Repository Root. A Profile identity contains a Built-in Profile name and a Profile Version, such as basic@1.

Selecting a Profile replaces the Basic Profile. Profiles do not merge, inherit from one another, or extend the Basic Profile. This prevents a repository from silently retaining policy from a Profile it no longer selects.

Presswork Configuration can add repository-specific Documentation Directories, Root Documents, Document Types, and Index Policies to the selected Profile. Those additions do not create a new Profile, override built-in Rules or requirements, or add executable behavior.

Profile Version

A Profile Version fixes the contract of one Built-in Profile independently of the installed Presswork version. The identity in presswork.json includes both values:

{
  "version": 1,
  "profile": {
    "name": "basic",
    "version": 1
  }
}

The top-level version is the Configuration Version. The nested profile.version is the Profile Version. They version different contracts.

Basic Profile

The Basic Profile is the complete Built-in Profile that Presswork applies when the Repository Root has no presswork.json. Its identity is basic@1. Adding presswork.json is optional when that policy already matches the repository.

Use Built-in Profiles to compare the policies available in this Presswork release. Then configure Presswork to select one explicitly or add repository-specific declarations.