Project Structure
DeveloperHub projects provide most flexibility compared to other services available.
How are projects structured?
Projects are at the top of the hierarchy. Each project can contains the following:
- Landing pages.
- One or many versions.
- Changelogs.
Each version can contain:
- Documentation sections.
- API references.
Each documentation section contains:
- An index of one or many pages, categories and external links.
Different projects, even if owned by the same team, are not inter-linked and their data is siloed. You may link between projects using external links. Each project can have its own customisations, branding, look, feel and team.
Example Setup
A flat-hierarchy project, for simpler documentation, could have such a setup:
- Project: Pied Piper
- Version: latest
- Documentation: Docs (containing any number of pages)
- Version: latest
A bigger project could have such a setup:
Project: Pied Piper
Version: v1.0
- Documentation: Getting Started
- Documentation: Android SDK
- Documentation: iOS SDK
- Documentation: Knowledge Base
Version: v2.0 (Latest)
- Documentation: Getting Started
- Documentation: Android SDK
- Documentation: iOS SDK
- Documentation: Knowledge Base
What if I don't need versions?
If your docs are not versioned, then you can simply use a generic name for the default version, such as the name of your project. Under that version, you can have all the documentation and API references you need, such as User Guide, Knowledge Base, FAQ, Android SDK, iOS SDK and so on.
If you only have one version, which is the default version, then the version name would not even show in the URL according to our URL Strategy.
For example, our own docs are not versioned and we only have a v1.0
. However, if you are on this page, then you'll notice that the link is actually support-center/structuring-documentation
with no mention of v1.0
.
Example Setup
An unversioned project could have such a setup:
- Project: Pied Piper
- Version: pied-piper
- Documentation: Getting Started
- Documentation: Android SDK
- Documentation: iOS SDK
- Documentation: Knowledge Base
- Version: pied-piper
Remember that you can hide the version selector using Custom CSS, see Hide Version Selector/Picker.
What is the use of versions?
Versions act as containers for documentation and API references that can be cloned.
Best Practices
To use DeveloperHub to its fullest, we recommend the following:
- It's important to use versioning correctly, as the landing page shows the contents of the default/latest version.
- If a documentation contains too many pages, you might want to separate them into different documentations.