HelioNote API Docs is an imaginary application that I created to showcase my API documentation skills using DITA XML and Oxygen XML Editor.
The goal was to design a simple, structured, and professional API documentation set with minimal design effort — keeping the layout clean, consistent, and easy to read.
You can view the live HTML version of this documentation at:
👉 https://nenas97.github.io/HelioNote_API_Docs/
The site is automatically generated from the contents of the docs/
folder using GitHub Pages.
<topic>
- container for concept/reference/task topics<title>
- titles for all topics<shortdesc>
- short description after the title<p>
- paragraphs (used everywhere)<section>
- for structuring content inside topics
<task>
- wrapper for task-based topics<taskbody>
- container for task content<prereq>
- prerequisites (optional)<context>
- background info before steps<steps>
- ordered steps block<step>
- single step<cmd>
- instruction inside a step<info>
- extra details within a step<codeblock>
- showing code inside steps<result>
- outcome after the steps<example>
- examples related to the task
<reference>
- wrapper for structured reference topics<refbody>
- container for reference content<section>
- subdivisions inside reference body<table>
- tabular information (used in errors.dita)<tgroup>
- table column/row group<thead>
- table header row<tbody>
- table body rows<row>
- table row<entry>
- table cell<dl>
- definition list (suggested for FAQs)<dlentry>
- one Q&A pair<dt>
- question term<dd>
- answer definition
<conref>
- content reuse (pointing to another topic or fragment)<keydef>
- key definition in the DITA map<ph keyref="">
- phrase that pulls value from a key
<ol>
- ordered lists<ul>
- unordered lists<b>
- bold text (inline)<xref>
- cross-references between topics<image>
- API logo or screenshots
Since Oxygen’s default publishing templates had limitations, a custom CSS override was created to achieve the desired look and consistency.
The design is intentionally minimal and clean.
body
- page layout (background, text, font).home-button
- styled "Home" button for navigationmain, #content, .body, .map, .topic, .reference, .task, .concept
- main content container stylestable, th, td
- table formatting (borders, padding, alignment)pre
- code block background, padding, and scroll behavior.codeph
- inline code styling (highlighted monospace text)h1
- centered, bold titlesh1 + p, h2 + p, h3 + p
- reduced spacing after headings