Other Files
This section describes additional important files in the RMC Software Documentation project that are not covered elsewhere.
docusaurus.config.js
This is the main configuration file for the Docusaurus site.
It defines site metadata, theme options, plugins, navigation, and other global settings.
tailwind.config.js
This file defines our Tailwind CSS setup for the documentation site. It extends the default Tailwind theme with project-specific design tokens and responsive behaviors that align with USACE branding and Groundwork standards.
Features
Dark Mode
This project uses "class" mode with [data-theme="dark"]
as the selector. This allows dark mode to toggle via Docusaurus' built-in
theme system.
darkMode: ["class", '[data-theme="dark"]'];
Content Scanning
Tailwind scans src
, docs
, blog
, and index.html
for class names. This ensures unused styles are purged correctly and all
Markdown/MDX content is covered.
content: [
"./src/**/*.{js,ts,jsx,tsx}",
"./docs/**/*.{js,ts,jsx,tsx,md,mdx}",
"./blog/**/*.{js,ts,jsx,tsx,md,mdx}",
"./index.html",
];
Theme Extensions
Key design tokens are defined under theme.extend
:
- Font Sizes: The project uses clamp(...) for fluid, responsive typography. Headings (h1–h6), body text (normal), and other sizes like caption, large, and navbar are all defined for consistency across breakpoints.
- Font Family: All documentation text uses the
usace
font stack:Roboto, Arial, Helvetica, sans-serif
. - Custom Colors:
- Static USACE brand colors (e.g.,
usace-box-red
,gov-banner-gray
) - Navigation and footer-specific colors
- CSS variable bindings (e.g.,
--font-color
,--ifm-link-color
) for theme responsiveness
- Static USACE brand colors (e.g.,
- Grid Utilities: Adds a custom
1fr-auto
row template for layouts that need a fixed footer
Screens (Breakpoints)
The project defines sm
, md
, and lg
explicitly:
sm
: 0px - mobile-first baselinemd
: 900px - triggers multi-column layoutslg
: 1760px - used to cap content width or enable wide layouts
Tips for developers
- Use the named
fontSize
keys (e.g.,text-normal
,text-caption
) instead of raw Tailwind sizes for consistency across the site - Use CSS variables (e.g.,
text-font-color
,ifm-primary
) to support dark/light theming automatically
LICENSE
This project is licensed under the MIT License © 2025 Risk Management Center.
Project Dependencies
-
package.json
Lists the project's dependencies, scripts, and metadata.
Defines the required versions of packages needed to run or build the documentation site, and includes custom scripts likecounters
,versions
,run
,start
,build
, anddeploy
for Docusaurus. -
package-lock.json
Locks the exact versions of every package (and sub-package) installed at the time ofnpm install
.
Ensures that everyone working on the project uses the same dependency versions, which improves consistency across environments.
.gitignore and .gitattributes
-
.gitignore
Specifies files and folders that should be excluded from version control (e.g.,node_modules/
, build artifacts, local environment files). -
.gitattributes
Used to define attributes per path, such as end-of-line normalization and diff settings.
.nojekyll
This file tells GitHub Pages to bypass Jekyll processing, allowing files and folders that start with an underscore (_
) to be served.
README.md
Provides an overview of the website and a link to this Documentation Guide from the GitHub repository.