PAMMS Repositories, Folder Structure, and Terminology

PAMMS repository roster

The policies, forms, and other materials that are published to the PAMMS site are stored in multiple repositories on GitLab. Each repository contains files and folders that are organized in a standard directory structure.

The repositories listed below contain the content published to the PAMMS site:

Repository Component Name Module Name

DFCS Common

dfcs

ROOT

CSBG

dfcs

csbg

LIHEAP

dfcs

liheap

Medicaid

dfcs

medicaid

SNAP

dfcs

snap

TANF

dfcs

tanf

PAMMS Help

help

ROOT

Directory structure and key files

The PAMMS source repositories that contain the policies use a standard directory structure and nomenclature. This ensures that Antora can locate the PAMMS components, collect the content files, and then build the PAMMS site.

Component

A component contains AsciiDoc files, their optional assets and examples, one or more optional navigation files, and a component version descriptor file per repository.

While it is common to find all of a component’s files in a single repository, a component can be distributed across several repositories. The DFCS component is aggregated from the dfcs-common, dfcs-csbg, dfcs-liheap, dfcs-medicaid, dfcs-snap, and the dfcs-tanf repositories.

Antora doesn’t recognize a component by repository name, URL or folder name. Instead, the presence of a file named antora.yml indicates to Antora that the directories and files nested under an antora.yml file are part of a component.

Component version

In these Help pages and the Antora documentation, the term component version is used when discussing concepts that apply to a version of a component. DFCS doesn’t version its program materials like software programs; therefore, there isn’t a version, so for now, component and component version are essentially the same in DFCS. It’s important to remember that a component’s name and a component’s version may be very different from the names of the repository, branch, or folder where it’s stored.

Component version descriptor

A component must contain a component version descriptor file named antora.yml. When Antora finds antora.yml in a repository, it knows it has located a component (or part of component in the case of dfcs). The component version descriptor tags the files under its hierarchy with the specified component name and version.

Module

A module is a discrete bundle of content, including text, images, and other source materials, organized in a hierarchy of folders by content format, then by optional topic if needed. One or more modules are stored in a modules directory. A component can contain one or more modules.

The modules in the dfcs component are ROOT, csbg, liheap, medicaid, snap, and tanf.

ROOT module

The ROOT module contains all the content that’s directly associated with the component itself. When pages in the ROOT module are published, these pages are promoted a level above any other modules' pages in that component’s URL. ROOT doesn’t appear in the URL of the pages.

Pages

The pages directory contains a module’s AsciiDoc files. These files are automatically converted to standalone HTML pages. Files in the pages folder will be published to the site even if they’re not listed in a navigation file. See the Standard Policy Document Structure to learn how to structure an AsciiDoc file.

Partials

The partials directory contains AsciiDoc files that aren’t standalone pages. These files are referenced by an include directive from a document in the pages directory.

Attachments

Word documents (the Forms of many of the programs) and PDF files are stored in the attachments directory. Word documents are converted to PDF when Antora runs. Files that were already stored in attachments as PDF are passed through to the site as they are by Antora.

Images

Photographs, screenshots, and graphic files in images are inserted into pages using the image macro.

Examples

Non-AsciiDoc files, such as source code, are stored in the examples directory. These files are often inserted into code blocks using an include directive.

Navigation

A navigation file, often named nav.adoc, contains one or more AsciiDoc lists. Antora uses these files to build the site’s component navigation menus.

This is a brief overview of terms that are important to how your repositories are organized and the purpose of the folders and certain files. To learn more or see additional examples, see the following pages in the Antora documentation: