This directory contains the source code for the s3lim documentation site, built using Hugo. The documentation is hosted at slimstorage.io.
content/: Source markdown files built by Hugo.docs/getting-started/: Flat list of onboarding and deployment setup guides.docs/reference/: Flat list of technical reference documentation (configuration, deployment methods, metrics).about/: Core concepts, optimization guides (such as the Small File Trap), FAQ, and glossary.contact.md: Straightforward contact page for support and billing queries.privacy.md: Public-facing privacy policy describing our zero-egress data architecture.
data/: Auto-generated specification files.themes/: Theme layouts and assets (specifically the customs3lim-minimaltheme).
Core technical specifications are auto-generated from Go code and AWS SAM templates. To refresh these static reference files, run the following command from the root of the s3lim repository:
make docsThis runs the script at scripts/gen-docs/main.go and populates the docs/data/ subdirectories (deployment/ and metrics/). These files serve as a reference for writing and editing documentation under content/.
To serve the documentation locally with live reloading:
# From the docs/ directory
hugo serverThe site will be available at http://localhost:1313.
To modify existing documentation, edit the markdown files directly under content/docs/getting-started/, content/docs/reference/, or content/about/.
To add a new documentation page:
- Create a new markdown file in the appropriate directory (e.g.,
content/docs/reference/new-feature.md). - Add Hugo front matter at the top:
--- title: "New Feature Spec" description: "Detailed spec for the new feature" ---
The documentation sidebar is explicitly structured for a premium, clean design. When adding a new page, it will not appear in the sidebar automatically. You must add it to the consolidated sidebar partial template.
Add your new page to the sidebar list in:
themes/s3lim-minimal/layouts/partials/sidebar.html
Use the {{ with .Site.GetPage ... }} helper to dynamically resolve the page and manage active page highlighting. For example:
{{ with .Site.GetPage "/docs/reference/new-feature.md" }}
<li><a href="{{ .RelPermalink }}" class="sidebar-link{{ if eq $.RelPermalink .RelPermalink }} active{{ end }}">{{ .Title }}</a></li>
{{ end }}The documentation is automatically published to GitHub Pages when changes are pushed to the main branch of the s3lim-docs repository (the remote for this submodule).
Non-generated documentation can drift and needs to be audited, especially pricing and metering details