/E25DX

🧑‍💻 Your next documentation theme...

Primary LanguageCSSMIT LicenseMIT

buymeacoffee

🦄 E25DX

Your next documentation theme...

Screen.Recording.2024-03-12.at.7.32.01.PM.mov

🌱 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.

  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.