HUGO
News Docs Themes Community GitHub

E25DX

Your next documentation theme

License
MIT
GitHub Stars
81
Last Updated
2025-03-22

buymeacoffee

🦄 E25DX

Your next documentation theme…

https://github.com/dumindu/E25DX/assets/1280428/00935567-6d50-4e1b-bb0c-cbd159ad37f0

🌱 Inspiration

  • Build a simple, modular but customizable technical documentation.
  • Build the website without using node/npm or any external frameworks(CSS, JS, icon, font).
  • Demo
    • learning-rust.github.io
    • learning-cloud-native-go.github.io

✅ Features

  • Responsive and adaptive layouts.
  • Built-in light and dark modes.
  • Customizable sidebars using Hugo data templates.
  • Support for multiple documentation sets.
  • Implement a menu via Hugo configs.
  • Integrate search or AI assistant.

🚀 Getting Started

  1. Install Hugo.

    • Use prebuilt binaries via https://github.com/gohugoio/hugo/releases/latest
    • Verify the installation via hugo version
  2. Create a new Hugo site with the E25DX theme.

    1. Foundation

      hugo new site newsite
      cd newsite
      
      git init
      git submodule add https://github.com/dumindu/E25DX.git themes/E25DX
      
      rm hugo.toml && cp themes/E25DX/hugo.yaml .
      cp themes/E25DX/static/sw.js ./static/
      cp themes/E25DX/static/manifest.json ./static/

      💡 We don’t need generated archetypes, assets, i18n, layouts folders in the newsite folder

    2. Configuration

      • newsite/hugo.yaml
        • languages: en:title and en:description
        • params: project, author and home
      • newsite/static/sw.js
        • cacheName prefix: ex. todo-
      • newsite/static/manifest.json
        • name, short_name, description
    3. Sample content and sidebar

      • add newsite/content/en/docs/_overview.md for overview
        ---
        title: Overview
        url: "docs/overview"
        aliases:
        - "/docs"
        ---
      • add newsite/content/en/docs/a1.hello-world.md as the first page of first section
        ---
        title: Hello World
        slug: hello-world
        ---
      • add newsite/content/en/docs/b1.modules.md as the first page of second section
        ---
        title: Modules
        slug: modules
        ---
      • add newsite/data/en/docs/sidebar.yml for section titles and page titles
        - title: Documentation
          pages:
            - title: Overview
        
        - title: Basics
          pages:
            - title: Hello World
        
        - title: Beyond The Basics
          pages:
            - title: Modules
    4. Run hugo server

      💡 Change newsite/hugo.yaml -> enableGitInfo: false, if you want to run hugo server before commit the changes.