Content Files
OwnShip serves three types of content file.
Markdown — .md
The primary format. Standard Markdown: headings, lists, tables, code blocks, blockquotes, bold, italic, images, links. Hard line breaks with two trailing spaces or explicit <br>.
The file's first # H1 heading becomes its display name in the navigation. If there's no H1, the filename is used (extension stripped, dashes replaced with spaces).
index.md in any folder is treated as that folder's home page and hidden from the navigation tree.
HTML — .html
Rendered inside a sandboxed <iframe> — scripts and all, safely isolated from the rest of the page. Useful for embedding interactive content or demos.
Plain text — .txt
Rendered as proportional text with line breaks preserved. A </> button in the header lets you switch to monospaced on the fly.
To default a file to monospaced, add .pre., .mono., .fixed., or .code. before the .txt extension — e.g. changelog.pre.txt. The marker is stripped from the display name in the nav.
Hidden files
Files and folders whose names begin with _ are hidden from navigation. OwnShip's own system files follow this convention — _header.md, _footer.md, _order.txt, and so on. Use it for any folder you don't want listed: _images/, _assets/, _data/, etc. Images and other assets in such a folder still load normally — hiding a folder from the nav doesn't stop the browser fetching from it.
That last point cuts both ways: _ hides a file from the navigation, not from the web. Someone who knows or guesses the URL can still fetch _data/notes.md directly. Don't keep anything private in your web root — see Keeping a Site Private.
Dotfiles (names starting with .) and OwnShip's own index.php and _site.ini are also hidden automatically.
Directory structure
Subdirectories appear in the navigation tree. Empty directories are hidden. Files and folders are sorted alphabetically and intermixed.
The site folder is the boundary
OwnShip serves only the files inside the folder where index.php lives, plus its subfolders. Content stored outside that folder is never served through the page viewer — including a folder that has been symlinked in from elsewhere (the symlink's real location is what counts). You can still link to or embed assets from a parent directory — e.g.  or [see](../notes.html) — because those are fetched directly by the browser, exactly as they would be on any static site. Only OwnShip's own page rendering is confined to the site folder.