HF PanelDocsv1.0.0

Contributing to the docs

How this documentation is written — Markdown files, front matter, page rules and link checks — and how to send a fix or a new page.

Spotted a mistake, an out-of-date label or a missing step? Partners and administrators send fixes to this site, and we welcome them. This page explains how the documentation is made, so your fix fits in straight away.

How the site is built

Every page is a Markdown file in the frontend/docs/content/ folder of the HF Panel source. Folders are the sections of the sidebar; each file is one page. The address of a page is its path without .md:

File Page
content/control-panel/email/email.md /control-panel/email/email/
content/tutorials/index.md /tutorials/ (a folder's own page)

Each folder has a _meta.json with its title and the order of its pages:

json
{ "title": "Email", "order": ["index", "email", "mail-apps"] }

The full rules are in frontend/docs/CONTENT.md. The most important ones follow.

A page

markdown
---
title: Email accounts
description: Create mailboxes, change their passwords and quotas, and open them in webmail.
---

One short paragraph: what this is and who uses it.

**Where:** Control Panel › Email › Email accounts

## Create an email account

1. Click **Create**.
  • Front matter is required: title (as in the sidebar) and description (one sentence, at most 155 characters).
  • Don't repeat the title as a # heading. Sections start with ##, then ###.
  • Screen pages start with Where: and the menu path.
  • Callouts are blockquotes starting with **Note:**, **Tip:**, **Important:** or **Warning:**.

Writing rules

  • Only what the software really does. Check each label in the panel itself, and write button, field and menu names in bold, exactly as the panel shows them.
  • British spelling, short sentences, second person ("you"), present tense.
  • Examples use yourdomain.com, example.com and the user sarahbakes.
  • Write the publishing company's domain as hostfog.io and its name as HostFog Ltd. They are filled in when the site is built.
  • Product names: HF Panel, Server Admin, Reseller Panel, Control Panel, HF Mail, HF Files, HF Studio, HF Server and HF Tunnel.
  • Never compare HF Panel with other products, and never name other control panels.

Link to other pages with absolute paths from the site root, ending in /, for example [Packages](/server-admin/accounts/packages/). A link to a heading adds its anchor: /tunnel/own-server/#free-links-for-the-desktop-app.

Every link and anchor is checked when the site is built. A link to a page or heading that doesn't exist stops the build with the page and the target.

Check your change

With Node.js 20.19 or newer, in frontend/docs:

bash
npm ci
npm run build

The build prints the number of pages, or every broken link. Fix them all before you send your change.

Send it

Send the changed files, or a patch, through https://hostfog.io/contact/. Say which page you changed and why, for example the screen and version where the label differs. Small fixes are as welcome as new pages.