Skip to content

LKummer/Satellite

Repository files navigation

Satellite is a Hugo theme for creating beautiful documentation websites. Check out the documentation.

Key FeaturesGetting StartedContribution

Key Features

  • Quickstart site archive with ready to build website.
  • Thorough documentation and guides for every feature of the theme.
  • Color customization to make it yours.
  • Automatic dark mode and manual toggle.
  • Fuzzy full-text search with no dependency on external services.
  • Multi-version builds to document your project over time.
  • Responsive design for great user experience everywhere.
  • Search and sharing optimization for Google, Facebook and Twitter.

Getting Started

Make sure to have Hugo v0.109.0 or later installed for best compatibility.

Download the latest quickstart-site archive from the releases. Once extracted, you should have a ready to build website. Run hugo to build the site, or hugo server to start a hot reload server.

Check out the detailed tutorial for more information.

Contribution

Please only contribute pull requests for open issues. If an issue does not already exist, please open an issue.

It would be appreciated if you post a comment on an issue before submitting or working on a pull request for it.

Make sure to run npm run format and npm run lint before submitting commits to avoid failing CI pipelines.

Development Workflow

Note these instructions are for development of Satellite itself. For development of sites using the theme, check out the documentation.

After cloning the project, install the required dependencies:

$ npm ci

Quick summary of the development scripts:

  • build - Build the Hugo theme, demo and documentation sites for production. Linting the sources in the process. Built artifacts are placed in the dist folder.
  • build:theme:debug - Build the Hugo theme unminified with source maps.
  • dev - Run the demo site development server.
  • dev:doc - Run the documentation site development server.
  • lint - Lint all files with ESLint, Stylelint and Prettier.
  • format - Format all files with ESLint, Stylelint and Prettier.

The scripts can be invoked using npm run:

$ npm run <script>

For example, if we want to build the theme we can use the build script:

$ npm run build

For more information check out the detailed guide.