TLDR: You do not need to write React components to publish articles on FarmDash. Write a Markdown file with YAML frontmatter, drop it into src/content/guides/, and the SSG pipeline auto-generates a fully styled, schema-enriched HTML page with FAQ JSON-LD, deep-linkable headings, and Cyber-Western branding.
What Is the 3-Step Content Efficiency Loop?
The protocol for scaling FarmDash content is designed for maximum leverage. You write Markdown. The infrastructure does the rest.
| Step | Action | Output |
|---|---|---|
| 1. Author Agent | Feed Gemini or Claude the AEO template prompt | Pure .md file with YAML frontmatter |
| 2. The Drop | Place the .md file into src/content/guides/ |
File staged for build |
| 3. The Build | Run node scripts/generate-static-pages.mjs |
Static HTML deployed to public/guides/ |
What Does the SSG Pipeline Auto-Generate?
The build script automatically processes every .md file and produces a production-ready HTML page with the following:
| Feature | Implementation | SEO Benefit |
|---|---|---|
| Cyber-Western UI | VT323 fonts, #0f0f13 background, #c4a7e7 accents |
Consistent brand entity signal |
| Article JSON-LD | Schema.org Article with author, date, publisher | E-E-A-T trust signal for Google |
| FAQ JSON-LD | Auto-extracted from H2 question headings | Direct Answer Engine citation |
| Deep-Link IDs | Auto-generated id attributes on every H2/H3 |
AI crawlers can link to specific answers |
| TL;DR Summary Box | Blockquotes starting with TLDR: get styled as summary cards |
Perplexity/ChatGPT scrape priority |
| Responsive Tables | Markdown tables wrapped in overflow-x:auto with monospace styling |
Mobile UX + structured data |
What Markdown Features Are Supported?
All standard Markdown features render correctly in the Cyber-Western template:
| Feature | Syntax | Renders As |
|---|---|---|
| Bold | **text** |
Heavy white text |
| Italic | *text* |
Emphasized lavender |
| Links | [text](url) |
Purple #c4a7e7 hyperlink |
| Code blocks | Triple backtick with language | Dark panel with amber #f6c177 monospace |
| Tables | Pipe-delimited rows | Responsive Cyber-Western grid |
| Blockquotes | > text |
Lavender left-border panel |
Which Frontmatter Fields Are Supported?
FarmDash uses YAML frontmatter at the top of each guide to generate SEO metadata, schema JSON-LD, and internal linking.
| Field | Type | Purpose | Example |
|---|---|---|---|
title |
String | H1 tag and <title> tag |
title: "How to Farm Hyperliquid" |
description |
String | Meta description for Google | description: "A complete guide to HLP..." |
author |
String | Injected into Article schema | author: "TitanidesLeto" |
date |
ISO 8601 | Published date schema | date: "2026-02-21T11:45:00Z" |
lastUpdated |
ISO 8601 | Modified date schema | lastUpdated: "2026-02-27T15:30:00Z" |
type |
String | Content categorization | type: "Guide" |
related_protocol_slug |
String | Triggers the "View Live Tracker" button | related_protocol_slug: "hyperliquid" |
Worked Examples: FAQ Schema Extraction
The SSG pipeline automatically generates Google-friendly FAQ JSON-LD if you format your H2 or H3 headings as questions (ending in a ?).
Example 1: Good Extraction
### What is the FarmDash Trail Heat score?
Trail Heat is a composite signal driven by TVL, status, category strength, momentum, and recency. It ranks protocols from 0-100.
Result: Generates a perfect Question and Answer schema block.
Example 2: Bad Extraction
### Trail Heat Score
Trail Heat is a composite signal driven by TVL...
Result: Ignored by the FAQ extractor because it lacks a question mark.
Example 3: Multi-Paragraph Answer Extraction
### How much does FarmDash cost?
FarmDash Scout is free for up to 5 wallets.
The Pioneer tier is $29/month and unlocks unlimited wallets.
Result: The pipeline intelligently extracts the text until the next heading, combining paragraphs into a single cohesive JSON-LD answer string.
The Deployment Loop (Real Execution)
Once your .md file is ready, the deployment loop takes less than 5 seconds.
- Commit the File:
git add src/content/guides/my-new-guide.md git commit -m "docs: add new airdrop guide" - Trigger Build:
node scripts/generate-static-pages.mjs - Verify Output: Check
public/guides/my-new-guide/index.htmlto ensure the JSON-LD schema was correctly injected into the<head>. - Push to Production: Vercel automatically deploys the static files to the edge network.
Sources & Verifiable Data
- Schema Validation: Outputs are verified against the Google Rich Results Test.
- Markdown Processing: Handled by the open-source Marked.js compiler.
- Frontmatter Parsing: Handled by Gray-Matter.
| Field | Type | Purpose |
|---|---|---|
title |
string | Page title. Used in <title>, H1, and Article schema name. |
description |
string | Meta description and Article schema description. Keep it human and specific. |
author |
string | Article schema author attribution. |
date |
string (YYYY-MM-DD) |
Publication date used for SEO and schema. |
lastUpdated |
string (YYYY-MM-DD) |
Optional freshness signal where supported. |
type |
string | Optional content label (e.g. Guide). |
tags |
array of strings | Optional topical tags for indexing and clustering. |
protocol |
string | For protocol-specific guides. Used for cross-linking and clustering (e.g. hyperliquid). |
Related Guides
- How to Build an Eliza Trading Agent - A complete developer guide for integrating the Signal Architect API into the Eliza framework.
- Tired of Farming Blind? - Understand how FarmDash uses this structured data to calculate Trail Heat and surface alpha.
|
related_protocol_slug| string | Optional explicit link between a guide and a tracker slug for internal linking. | |seo_description| string | Optional alternate SEO description field used by some guides. Preferdescriptionunless a page is protocol-styled. | |trail_heat_base| number | Optional baseline signal for protocol guides. Used for display/ordering where relevant. | |status| string | Optional protocol guide field (e.g.Points Program). | |category| string | Optional protocol guide field (e.g.Perps). | |last_updated| string (YYYY-MM-DD) | Optional protocol guide freshness field.
How Does FAQ JSON-LD Extraction Work?
The SSG pipeline extracts FAQs by scanning your guide for question-style headings.
FAQ extraction rules (practical)
- Use question headings: Write FAQs as Markdown headings that start with “What”, “How”, “Why”, “Can”, “Is”, “Should”, etc.
- Put the answer immediately below the question: The content directly under the question heading becomes the answer.
- Keep answers tight: Short paragraphs outperform walls of text for answer engines.
- Avoid nesting multiple questions into one heading: One question per heading.
- Prefer plain text over heavy lists: Lists are supported, but clean paragraphs tend to serialize into better JSON-LD.
Example: Good FAQ formatting (generates clean JSON-LD)
## Frequently Asked Questions?
### What is Trail Heat™?
Trail Heat™ is FarmDash's 0–100 score that ranks protocols by opportunity using TVL, momentum, recency, community signals, and risk.
### How often do the scores update?
TVL and on-chain metrics refresh daily, while community signals update on a slower cadence depending on data availability.
### Can a high score guarantee an airdrop?
No. The score is a probability and prioritization signal, not a promise of payout.
Example: Bad FAQ formatting (often produces weak schema)
## FAQ
### Trail Heat
It’s our scoring.
### Updates
Daily.
The “bad” version is too vague and not phrased as questions, which makes it harder for answer engines to attribute.
How Do You Start Publishing Guides?
Stop guessing. Paste your 0x address into FarmDash Watch Mode to see your wallet's Trail Heat score, then write guides that link directly to your live tracker data using the related_protocol_slug frontmatter field.