HugoStarter

hugo-rocinante — Hugo Starter Template

By mavidser

Rocinante is a minimal Hugo theme that supports both regular blogs and photoblogs, relies on almost no JavaScript, and provides pagination, tags, RSS, and custom CSS.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

2 previews
Desktop homepage1 / 2
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 2

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-03View source

What stands out

A quick read of the recorded project description.

01

Minimal theme; the README states it has few non-essential components and is under 5kB in total size

02

Supports both regular blog posts and photoblogs

03

Built-in pagination, tags, mobile responsiveness, and RSS subscription

04

No JavaScript dependency except for the optional smart email link

05

Supports custom CSS via params.customCSS

06

Offers light, dark, and auto color schemes

Template Details

Rocinante is a minimal Hugo theme developed by mavidser and released under the MIT license. It targets two content types: regular blog posts and photoblogs; the homepage only displays content types listed in the mainSections parameter. At the configuration level, the theme provides pagination, tags, mobile responsiveness, RSS subscription, and custom CSS support, and can switch between light, dark, or auto mode via colorScheme.

The theme itself contains almost no JavaScript: the only script is used for an optional smart email link, which first displays the email address and then redirects to mailto upon click; if JavaScript is disabled in the browser, the link degrades to a regular link. Installation is done by adding the repository as a Git submodule into the themes/rocinante directory of a Hugo site, then configuring options such as customCSS, mainSections, email, favicon, about, and links in the params section of config.toml.

Regarding usage limitations, the README does not provide information on content models, multilingual support, search, comments, or image processing, so these capabilities are outside the known scope of this theme. The about text is written as a string in the configuration, and the README notes that this approach is somewhat inconvenient. The licensing of third-party assets such as demo images, fonts, and icons must be verified separately and cannot be determined solely based on the MIT license of the code.

HugoStarter

Is it right for your project?

Use Cases

  • Building a text-focused personal blog that needs pagination and tag archives
  • Building a photoblog that displays photos as the main content type
  • Wanting a site that remains browsable when JavaScript is disabled
  • Hugo sites that need to adjust the theme appearance via custom CSS

Suitable For

  • Developers using Hugo who prefer a minimal theme with low script dependency
  • Personal site authors who publish both articles and photos
  • Blog maintainers who need RSS subscription and tag functionality

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Run git submodule add https://github.com/mavidser/hugo-rocinante.git themes/rocinante in the Hugo site directory to install

  2. 2

    Set theme = "rocinante" in config.toml, and configure paginate and markup.goldmark.renderer.unsafe as needed

  3. 3

    Configure options such as colorScheme, mainSections, email, favicon, about, and links in params

  4. 4

    Run hugo server and visit localhost:1313 to preview the site

  5. 5

    Add hidden: true to a post's front matter to hide it from the homepage and list pages

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license from the public repository; the free scope applies to that version's code and does not imply that external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use, and distribution of this version's code are permitted.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as-is; warranties and liability limitations are governed by the original license and applicable law.

Additional costs & items to verify

  • The theme's only JavaScript is used for optional smart email link enhancement: it first displays the email address and then redirects to mailto upon click; if JavaScript is disabled in the browser, the link degrades to a regular link without affecting basic use.
  • The JavaScript snippet that changes link behavior is injected only when smart_email_link is set to true for a link in params.links; if not enabled, the script is absent.
  • The about text must be written directly as a string in the params section of config.toml; the README notes this approach is somewhat inconvenient and does not support a separate content file.
  • The homepage only displays content types listed in the mainSections array (posts, photos, or both); types not listed will not appear in the homepage list.
  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be determined solely based on the MIT license of the code.
  • External services such as domain, hosting, database, payment, or AI may incur additional charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

The only javascript in the theme is for an optional enhancement to Email link, where it shows the email ID upon clicking such links.

Original README

smart_email_link = Boolean. If true, a javascript snippet is included which changed link behavior.

Original README

about = """Hi. Welcome to my website"""

Original README

Only the content type listed in the array gets listed on the homepage.

Original README
https://github.com/mavidser/hugo-rocinante/blob/master/LICENSEhttps://github.com/mavidser/hugo-rocinante/blob/master/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-03. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
Hugo Themes
Documentation and maintenance reference score
More documented · 81 / 100
Technologies
Hugo
Website type
Starter
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2025-08-26
Screenshot last checked
2026-10-03

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Hugo as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: 86319517f0a9d9db963cd5aad1b71baa1172ae3462360d5c20da4b5566853670

2026-10-03T08:08:16.520Z

Source file / repository
# Rocinante theme for Hugo

Rocinante is a minimal and lightweight theme for hugo. It has minimal non-essential components, and supports normal blog posts and photoblogs.

[Here][1] are some opinions used in building a theme. In short, extremely minimal footprint (under 5kB) with good contrast for accessibility.

######  [Demo link](https://sidverma.io/hugo-rocinante/)

![Rocinante Screenshot 1](https://raw.githubusercontent.com/mavidser/hugo-rocinante/master/images/tn.png)

![Rocinante Screenshot 2](https://raw.githubusercontent.com/mavidser/hugo-rocinante/master/images/screenshot.png)

## Features

- Pagination
- Tags support
- Mobile support
- RSS Feeds
- No essential Javascript
- Custom CSS support

The only javascript in the theme is for an optional enhancement to Email link, where it shows the email ID upon clicking such links. See the demo on the 'Email' link on [the demo website](https://sidverma.io/hugo-rocinante/). If javascript is disabled, it works as a normal link.

## Installation

Inside the folder of your Hugo site run:

```
git submodule add https://github.com/mavidser/hugo-rocinante.git themes/rocinante
```

For more information read the official [setup guide](//gohugo.io/overview/installing/) of Hugo.

## Configuration options

Put these in the `params` section of config.toml

- **customCSS** - An array of paths to css files in the `assets` directory. Eg: `customCSS = ["css/style.css"]`.
- **mainSections** - An array containing either `"posts"`, `"photos"` or both. Only the content type listed in the array gets listed on the homepage. Eg: `mainSections = ["post", "photos"]`
- **email** - A string which will be used in the `mailto` link if smart email links are being used. Details on smart links are below, in the links option details. Eg: `email = "[email protected]"`
- **favicon** - A string of the favicon path in the `static` directory.  Eg: `favicon = "icon/favicon.jpg"`
- **about** - A string of the about text. This is slightly ugly, sorry. Eg: `about = """Hi. Welcome to my website"""`
- **links** - A table which contains array of `link` tables. This one is easier to explain using an example. Details of the link `table`:
  - name - String containing the text of the link
  - href - String containing URL of the link
  - new_tab = Boolean, to open link in a new tab
  - smart_email_link = Boolean. If true, a javascript snippet is included which changed link behavior. Text will change to the content of `email` param upon clicking once, after which it follows a `mailto:` link to the same. See example on the Email link in the about section of the demo page.

  Example:
  ```toml
  [[params.links]]
    [[params.links.link]]
      name = "About"
      href = "https://en.wikipedia.org/wiki/Don_Quixote"
      new_tab = true
      smart_email_link = true
  ```

## Getting started

After installing the theme successfully it requires a just a few more steps to get your site running.

### Update config file

Example:

```toml
baseURL = "https://example.com/"
languageCode = "en-us"
title = "Rocinante"
theme = "rocinante"
paginate = 3

[markup]
  [markup.goldmark.renderer]
    unsafe= true

[params]
  colorScheme = "light" # "light" or "dark" or "auto". Defaults to light.
  mainSections = ["posts", "photos"]
  email = "[email protected]"
  favicon = "icons/favicon.png"
  about = """
About section. Enter details about you here.
"""

  [[params.links]]
    [[params.links.link]]
      name = "Resume"
      href = "/Resume.pdf"
    [[params.links.link]]
      name = "Email"
      href = "/contact"
      smart_email_link = true

  [[params.links]]
    [[params.links.link]]
      name = "Github"
      href = "https://github.com/"
      new_tab = true
    [[params.links.link]]
      name = "Mastodon"
      href = "https://mastodon.social/"
      new_tab = true
    [[params.links.link]]
      name = "Twitter"
      href = "https://twitter.com/"
      new_tab = true
    [[params.links.link]]
      name = "Instagram"
      href = "https://instagram.com/"
      new_tab = true
```

### Check your site

In order to see your site in action, run Hugo's built-in local server.

```
hugo server
```

Now enter [`localhost:1313`](http://localhost:1313/) in the address bar of your browser.

## Post configurations:

### Hidden posts:

To hide a post from appearing in the homepage or any other list of posts, add the following to the front matter of the post:

```toml
hidden: true
```

## License

MIT

[1]: https://sidverma.io/2020/03/07/website-updates#the-theme
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.

hugo-xmin

hugo-xmin

hugo-xmin is an extremely minimal Hugo theme written by Yihui Xie for template beginners. HTML and CSS total about 140 lines, with no external dependencies, and it uses the MIT license.

Hugo · Starter

hugo-theme-gallery

hugo-theme-gallery

A Hugo Extended photo gallery theme that organizes images with Page Bundles, automatically generating album lists and gallery pages with a Justified layout and PhotoSwipe lightbox.

Hugo · Starter

reveal-hugo

reveal-hugo

reveal-hugo is a Hugo theme that converts Markdown content into Reveal.js-based HTML presentations. It supports slide separation with `---`, shortcodes for fragments, slides, sections, notes, Markdown, and MathJax, and organizes content as root or section presentations with order controlled by weight.

Hugo · Starter

anatole

anatole

Anatole is a minimalistic two-column Hugo theme ported from farbox-theme-Anatole, featuring dark mode, multilingual and RTL support, and optional portfolio, comments, analytics, KaTeX, and Mermaid integrations. It suits personal blogs, portfolios, or documentation sites built with Hugo.

Hugo · Starter

hugo-theme-diary

hugo-theme-diary

A Hugo diary-style theme ported from the Hexo theme Journal, with a grid homepage for essays and daily notes. It supports six languages, dark mode, table-of-contents scroll positioning, reading time, code highlighting, and configurable sidebar, fonts, and colors.

Hugo · Starter

risotto

risotto

risotto is a minimalist, responsive Hugo theme inspired by terminal ricing aesthetics. It uses semantic HTML and pure CSS with no JavaScript, and its layout relies on CSS Grid for native responsiveness without manual breakpoints.

Hugo · Starter