Skip to content

Design and development

OINK maintainer contracts, accepted decisions, dated research, and proposals in one canonical bilingual section.
OINK 0.8.0 contract

This section publishes the maintainer contracts released with OINK 0.8.0, with Hugo Extended 0.160.1 as the compatibility floor. The canonical bilingual sources live in this repository under content/docs/design/.

This section is the durable design record for OINK. It complements the task-oriented guides elsewhere on the site: use those guides to build a site, and use this section to understand current invariants, the reasons behind them, the evidence used to evaluate alternatives, and work that is still only a proposal.

Reading this section

LayerMeaning
ContractsNormative behavior that compatible implementations must preserve
DecisionsAccepted rationale and boundaries that explain current behavior
ResearchDated, non-normative evidence that may need to be refreshed
ProposalsDraft PRDs and RFCs; publication here is not proof of implementation

Contract map

ContractAuthority
ArchitectureBuild, configuration, diagnostics, featured images, output, security, accessibility, and performance
ComponentsComponent API, Book and release primitives, validation, and output degradation
Shell and navigationNavigation, search, blog presentation, actions, taxonomies, and page-end composition
Landing pagesLanding data, the 22-section registry, runtime, accessibility, and outputs
Migration boundarySupported 0.4-to-current content and configuration migrations

Design records

CollectionContents
DecisionsAccepted diagnostic, configuration, and authoring rationale
ResearchGoldmark probes and evidence from real OINK consumers
ProposalsActive PRDs for knowledge graphs, media convergence, and machine-readable indexes

Create every new OINK PRD or RFC as an English and Chinese page pair under content/docs/design/proposals/. Do not create another repository-local plan/, plans/, or proposal/ tree. Once a proposal is accepted, update the implementation, owning checker, and relevant contract; preserve the stable rationale under Decisions and retire the draft through Git history and the changelog.

Authority and maintenance

This directory owns the maintainer design prose in English and Chinese. The theme repository owns executable facts: hugo.yaml owns published defaults; owning resolvers and checkers define optional shapes; layouts/ and assets/ own rendered behavior; check scripts and tests/goldens/ own validation; and VENDOR.json owns bundled versions, licenses, files, and checksums.

Whenever public behavior changes, update the implementation, its owning checker, and both language versions of the relevant contract in the same delivery. Tests should exercise behavior and output rather than pinning prose.