Guide to Adding Content & Formatting
To ensure OpenStick.org remains clean, consistent, and easy to read, follow these formatting guidelines when writing new documentation.
1. File Placement & Frontmatter
Section titled “1. File Placement & Frontmatter”Place your .md or .mdx file in the appropriate directory inside src/content/docs/:
about/— History, architecture, comparisonsgetting-started/— Beginner tutorials, safety, prerequisitesflashing/— Operating system installation guideshardware/— Board breakdowns, pinouts, schematicsprojects/— Practical use cases and setupsvideos/— Video libraries and media
Required Frontmatter
Section titled “Required Frontmatter”Every article must start with:
---title: Descriptive Title of Your Guidedescription: A 1-2 sentence summary explaining what the reader will accomplish.---2. Using Alerts and Callouts
Section titled “2. Using Alerts and Callouts”Emphasize critical steps, hardware risks, and pro tips using Starlight callout blocks:
Dangerous or Irreversible Operations
Section titled “Dangerous or Irreversible Operations”:::danger[Permanent Data Loss Risk!]Erasing modemst1 and modemst2 without a backup will erase your IMEI and modem calibration!:::Critical Warnings
Section titled “Critical Warnings”:::caution[1.8V Logic Level Only!]Connecting 3.3V or 5V serial adapters will destroy the SoC's UART pins.:::Pro Tips & Advice
Section titled “Pro Tips & Advice”:::tip[Speed Optimization]Enable zram compressed swap to prevent out-of-memory errors on 512MB RAM boards.:::3. Using Custom Components in MDX
Section titled “3. Using Custom Components in MDX”If your file has the .mdx extension, you can import custom components:
Embedding Videos
Section titled “Embedding Videos”import VideoEmbed from '../../components/VideoEmbed.astro';
<VideoEmbed platform="youtube" id="YOUR_VIDEO_ID" title="Tutorial Title" />Specifying Hardware Boards
Section titled “Specifying Hardware Boards”import DeviceCard from '../../components/DeviceCard.astro';
<DeviceCard name="Board Name" codename="board-code" ram="512 MB" storage="4 GB" wifi="WCN3620" flashType="eMMC" testPoint="Pads under SIM slot" status="Supported"> Detailed notes about this board revision.</DeviceCard>4. Code Blocks and Terminal Commands
Section titled “4. Code Blocks and Terminal Commands”Always specify the language for syntax highlighting (bash, python, ini, json):
# Good: clearly annotated commandfastboot flash boot lk2nd.imgInclude comments in code snippets explaining what each line does, especially for non-obvious flags.