Compare commits

...

9 Commits

Author SHA1 Message Date
Mark Dumay
744a0f7248 Merge pull request #426 from gethinode/develop
Clean up installation
2023-08-15 14:10:30 +02:00
mark
a1e48ade96 Fix linting issue 2023-08-15 14:01:34 +02:00
Mark Dumay
9a2540cf04 Merge branch 'main' into develop 2023-08-15 13:55:57 +02:00
mark
399f525a3f Bump package version 2023-08-15 13:55:14 +02:00
mark
f1c99b0ed7 Update installation and license 2023-08-15 13:55:07 +02:00
mark
6e14e50dfd Include build stats in repo 2023-08-15 13:18:49 +02:00
mark
a143f90a37 Clean up stylelint config 2023-08-15 13:18:34 +02:00
mark
e60b2ec4a1 Add build stats to repo 2023-08-15 13:18:14 +02:00
mark
0250ef68dd Expand all code lines horizontally 2023-08-15 08:41:38 +02:00
7 changed files with 678 additions and 33 deletions

3
.gitignore vendored
View File

@@ -4,5 +4,4 @@ resources/
node_modules/
.DS_store
.hugo_build.lock
hugo_stats.json
.hugo_build.lock

View File

@@ -1,7 +1,6 @@
assets/scss/common/_variables.scss
assets/scss/components/_syntax-dark.scss
assets/scss/components/_syntax-light.scss
assets/scss/hotfix
assets/scss/vendor
assets/scss/theme/fonts.scss
assets/scss/app.scss

View File

@@ -56,54 +56,42 @@
- [PageSpeed Insights][pagespeed]
- [Mozilla Observatory][observatory]
Hinode is a clean documentation and blog theme for [Hugo][hugo], an open-source static site generator. Based on the [Bootstrap 5][bootstrap] framework, the rendered site is fast, secure, and responsive. Hinode uses [FlexSearch][flexsearch] to enable full text search across your site. Finally, the theme supports [Node Package Manager][npm] to automate the build process and to keep track of dependencies.
Additional features include:
- Flexible configuration of Hugo modules
- Switching between light mode and dark mode
- Support for multiple languages
- Reusable Bootstrap components through configurable shortcodes and partials
- Embedded comments through light-weight integration with GitHub via [utteranc.es][utterances]
- Integrated sidebar navigation for content-heavy sections, such as documentation pages
- Reponsive image handling for multiple screen sizes and resolutions
- Optimized search results, scoring 100 points for SEO on [PageSpeed Insights][pagespeed]
- Secure by default, scoring A+ on [Mozilla Observatory test][observatory]
Hinode is a clean documentation and blog theme for [Hugo][hugo], an open-source static site generator. Based on the [Bootstrap 5][bootstrap] framework, the rendered site is fast, secure, and responsive. Hinode uses [FlexSearch][flexsearch] to enable full text search across your site. Finally, the theme supports [Node Package Manager][npm] (npm) to automate the build process and to keep track of dependencies.
Detailed information about Hinode is available on the [official website][website].
## Prerequisites
Hinode requires Git, Node.js and npm for local development and testing. Download the Git binary from the [official website][git_download]. Next, download and install [Node.js][nodejs] (it includes npm) for your platform.
Hinode is a [Hugo theme that uses modules][hugo_modules] to install and maintain various components. It can be installed using either Hugo or npm. If you would like to take advantage of automation, the npm approach is recommended. Refer to the [Hinode template][repository_template] for installation instructions with npm.
The installation instructions in this readme install Hinode as a regular Hugo theme. Hinode requires the following software to be installed on your local machine.
- [Go binary][golang_download]
- [Hugo][nodejs] (extended version)
[Git][git_download] is recommended, but is not a strict requirement.
## Installation
Start a new Hinode project in three steps:
1. Create a new site
Hinode is available as a [template][repository_template], and a [main repository][repository]. The template [npm][npm] to link to the latest available version of Hinode. Unless you plan to customize a lot, it is recommended to use the template:
1. **Create a new site**
```bash
git clone https://github.com/gethinode/template.git my-hinode-site && cd my-hinode-site
hugo new site my-hinode-site && cd my-hinode-site
```
Use the main theme if you intend to customize the base code:
1. **Initialize the module system**
```bash
git clone https://github.com/gethinode/hinode.git my-hinode-site && cd my-hinode-site
hugo mod init example.com/my-hinode-site
echo "[[module.imports]]\npath = 'github.com/gethinode/hinode'" >> hugo.toml
```
1. Install dependencies
1. **Start a development server**
```bash
npm install
```
1. Start development server
```bash
npm run start
hugo server
```
## Configuration
@@ -127,7 +115,7 @@ Hinode is inspired by the following themes:
## License
The `hinode` and `template` codebase is released under the [MIT license][license]. The documentation (including the "README" and `docs` codebase) is licensed under the Creative Commons [(CC BY-NC 4.0)][cc-by-nc-4.0] license.
The `hinode`, `docs`, and `template` codebase is released under the [MIT license][license]. The documentation of Hinode is licensed under the Creative Commons [(CC BY-NC 4.0)][cc-by-nc-4.0] license. This includes all files within the repository's `/content` and `/exampleSite/content` folders and their children, as well as the "README" in the repository root. This applies to all public repositories maintained by `gethinode` on GitHub, including the `gethinode/hinode`, `gethinode/template`, and `gethinode/docs` repositories, unless specified otherwise.
<!-- MARKDOWN PUBLIC LINKS -->
[blist]: https://github.com/apvarun/blist-hugo-theme
@@ -137,6 +125,8 @@ The `hinode` and `template` codebase is released under the [MIT license][license
[flexsearch]: https://github.com/nextapps-de/flexsearch
[git_download]: https://git-scm.com
[hugo]: https://gohugo.io
[hugo_download]: https://gohugo.io/installation
[hugo_modules]: https://gohugo.io/hugo-modules/
[netlify]: https://www.netlify.com
[nodejs]: https://nodejs.org
[npm]: https://www.npmjs.com
@@ -147,6 +137,7 @@ The `hinode` and `template` codebase is released under the [MIT license][license
<!-- MARKDOWN MAINTAINED LINKS -->
[contribute]: https://gethinode.com/contribute
[getstarted]: https://gethinode.com/docs
[golang_download]: https://go.dev/dl/
[demo]: https://demo.gethinode.com/
[license]: https://github.com/gethinode/hinode/blob/main/LICENSE
[repository]: https://github.com/gethinode/hinode.git

View File

@@ -12,6 +12,10 @@
display: flex;
}
.chroma code {
flex: 1;
}
.syntax-highlight {
background-color: var(--bs-light) if($enable-important-utilities, !important, null);
overflow-x: auto;

464
exampleSite/hugo_stats.json Normal file
View File

@@ -0,0 +1,464 @@
{
"htmlElements": {
"tags": [
"a",
"body",
"br",
"button",
"code",
"div",
"figcaption",
"figure",
"footer",
"form",
"h1",
"h2",
"h3",
"h4",
"h5",
"h6",
"head",
"hr",
"html",
"i",
"img",
"input",
"li",
"link",
"meta",
"nav",
"noscript",
"ol",
"p",
"path",
"pre",
"script",
"section",
"small",
"span",
"strong",
"svg",
"time",
"title",
"ul",
"use"
],
"classes": [
"accordion",
"accordion-body",
"accordion-button",
"accordion-collapse",
"accordion-header",
"accordion-item",
"active",
"alert",
"alert-danger",
"alert-dismissible",
"align-content-center",
"align-items-center",
"align-items-end",
"align-items-start",
"align-middle",
"align-self-center",
"anchor",
"badge",
"bg-body",
"bg-body-tertiary",
"bg-danger",
"bg-info",
"bg-opacity-10",
"bg-primary",
"bg-primary-subtle",
"bg-secondary",
"border",
"border-0",
"border-1",
"border-bottom",
"border-end",
"border-none",
"border-start",
"border-top",
"bottom-0",
"bottom-bar",
"breadcrumb",
"breadcrumb-item",
"btn",
"btn-close",
"btn-group",
"btn-light",
"btn-outline-primary",
"btn-outline-secondary",
"btn-primary",
"btn-secondary",
"btn-sm",
"btn-social",
"card",
"card-body",
"card-body-link",
"card-emphasize",
"card-img-top",
"card-img-wrap",
"card-text",
"card-title",
"card-zoom",
"carousel",
"carousel-caption",
"carousel-control-next",
"carousel-control-next-icon",
"carousel-control-prev",
"carousel-control-prev-icon",
"carousel-indicators",
"carousel-inner",
"carousel-item",
"chroma",
"col",
"col-12",
"col-3",
"col-4",
"col-6",
"col-8",
"col-9",
"col-lg-2",
"col-lg-4",
"col-lg-8",
"col-md-10",
"col-md-2",
"col-md-4",
"col-md-8",
"col-md-auto",
"col-sm-12",
"col-sm-3",
"col-sm-6",
"collapse",
"collapsed",
"container",
"container-fluid",
"container-xxl",
"d-block",
"d-flex",
"d-grid",
"d-inline",
"d-inline-flex",
"d-lg-block",
"d-md-block",
"d-md-flex",
"d-md-none",
"d-none",
"d-none-dark",
"d-none-light",
"d-sm-block",
"d-sm-none",
"display-1",
"display-4",
"dropdown",
"dropdown-divider-bg",
"dropdown-item",
"dropdown-menu",
"dropdown-menu-end",
"dropdown-toggle",
"emphasis",
"emphasis-dark",
"end-0",
"fa",
"fa-10x",
"fa-2x",
"fa-2xl",
"fa-2xs",
"fa-arrow-left",
"fa-arrow-right",
"fa-bootstrap",
"fa-circle-check",
"fa-circle-half-stroke",
"fa-code",
"fa-docker",
"fa-ellipsis",
"fa-face-frown",
"fa-facebook",
"fa-fluid",
"fa-fw",
"fa-github",
"fa-globe",
"fa-heart",
"fa-house",
"fa-link",
"fa-linkedin",
"fa-magnifying-glass",
"fa-medium",
"fa-moon",
"fa-rocket",
"fa-share-nodes",
"fa-sort",
"fa-square-check",
"fa-sun",
"fa-up-right-from-square",
"fa-whatsapp",
"fa-wrapper",
"fa-x-twitter",
"fab",
"fade",
"fas",
"feature",
"figure-caption",
"fixed-top",
"flex-column",
"flex-fill",
"flex-grow-1",
"flex-wrap",
"font-monospace",
"footer",
"form-control",
"fs-3",
"fs-5",
"fw-30",
"fw-bold",
"fw-semibold",
"g-0",
"gap-2",
"gap-3",
"gradient",
"h-100",
"h4",
"h6",
"heading",
"highlight",
"hstack",
"img-fluid",
"img-wrap",
"invisible",
"is-search",
"justify-content-between",
"justify-content-center",
"justify-content-end",
"justify-content-start",
"lead",
"leaflet-map",
"link-bg-body",
"link-bg-body-tertiary",
"link-bg-footer",
"link-primary",
"link-secondary",
"link-success",
"link-warning",
"m-0",
"main-nav-toggler",
"mb-0",
"mb-3",
"mb-4",
"mb-5",
"mb-lg-5",
"me-3",
"me-auto",
"middle-bar",
"min-vh-100",
"ms-1",
"ms-3",
"ms-auto",
"ms-md-3",
"mt-2",
"mt-3",
"mt-5",
"mt-auto",
"multi-docs-collapse-14",
"multi-file-collapse-1",
"mx-auto",
"mx-md-2",
"my-2",
"my-auto",
"my-md-0",
"nav",
"nav-item",
"nav-link",
"nav-pills",
"nav-tabs",
"navbar",
"navbar-brand",
"navbar-collapse",
"navbar-contrast",
"navbar-expand-md",
"navbar-nav",
"navbar-nav-scroll",
"navbar-toggler",
"next",
"no-js",
"order-1",
"order-2",
"order-3",
"order-4",
"order-first",
"order-sm-2",
"order-sm-3",
"p-0",
"p-1",
"p-2",
"p-3",
"p-4",
"pb-2",
"pb-3",
"pb-5",
"pe-3",
"position-absolute",
"position-fixed",
"position-relative",
"post-date",
"previous",
"ps-1",
"ps-3",
"ps-xl-3",
"pt-3",
"px-3",
"px-4",
"px-xxl-0",
"py-1",
"py-2",
"py-3",
"py-5",
"py-md-1",
"ratio",
"ratio-16x9",
"ratio-21x9",
"rounded",
"rounded-2",
"rounded-bottom",
"rounded-pill",
"rounded-top",
"row",
"row-cols-1",
"row-cols-2",
"row-cols-md-3",
"row-cols-sm-2",
"row-cols-sm-3",
"row-cols-sm-4",
"search",
"section",
"section-sm",
"shadow",
"show",
"slide",
"small",
"spinner-border",
"start-100",
"sticky-top",
"stretched-link",
"svg-inline--fa",
"switch-mode-collapsed",
"syntax-highlight",
"tab-content",
"tab-pane",
"tag-link",
"text-bg-body",
"text-bg-body-tertiary",
"text-bg-info",
"text-bg-primary",
"text-bg-success",
"text-bg-warning",
"text-body",
"text-body-secondary",
"text-break",
"text-center",
"text-decoration-none",
"text-end",
"text-info",
"text-nowrap",
"text-right",
"text-secondary",
"text-sm-start",
"text-uppercase",
"theme-icon",
"theme-icon-active",
"tickmark",
"timeline",
"timeline-bg-dark",
"timeline-connector-end",
"timeline-connector-start",
"timeline-description-text-end",
"timeline-description-text-start",
"timeline-dot",
"timeline-info",
"timeline-panel-end",
"timeline-panel-start",
"timeline-primary",
"timeline-semi-circle-end",
"timeline-semi-circle-start",
"timeline-sm",
"timeline-success",
"timeline-warning",
"toast",
"toast-body",
"toast-container",
"toast-header",
"toc",
"toc-button",
"toc-panel",
"toc-sidebar",
"toggler-icon",
"top-0",
"top-bar",
"translate-middle",
"visually-hidden",
"vr",
"w-100",
"w-50"
],
"ids": [
"-theme",
"-theme-collapsed",
"TableOfContents",
"accordion",
"accordion-0",
"accordion-0-heading-0",
"accordion-0-heading-1",
"accordion-0-heading-2",
"accordion-0-item-0",
"accordion-0-item-1",
"accordion-0-item-2",
"alert",
"badge",
"body-docs-collapse-14",
"body-file-collapse-1",
"breadcrumb",
"btn-webshare",
"button",
"button-group",
"card",
"carousel",
"carousel-0",
"collapse",
"collapse-1",
"command-prompt",
"docs",
"example",
"file",
"footer-docs-collapse-14",
"footer-file-collapse-1",
"formula-katex",
"icon",
"image",
"leaflet-map-0",
"map",
"nav",
"nav-0",
"nav-0-0",
"nav-0-1",
"nav-0-2",
"nav-0-btn-0",
"nav-0-btn-1",
"nav-0-btn-2",
"navbar",
"navbar-0-collapse",
"navbar-sample-collapse",
"release",
"search",
"spinner",
"suggestions",
"timeline",
"toast",
"toast-container",
"toast-copied-code-message",
"toast-example-1",
"toast-example-2",
"toast-message-email-4",
"toc-collapse",
"tooltip"
]
}
}

188
hugo_stats.json Normal file
View File

@@ -0,0 +1,188 @@
{
"htmlElements": {
"tags": [
"a",
"body",
"button",
"div",
"footer",
"form",
"head",
"hr",
"html",
"img",
"input",
"li",
"link",
"meta",
"nav",
"p",
"path",
"script",
"small",
"span",
"strong",
"svg",
"title",
"ul"
],
"classes": [
"active",
"align-content-center",
"align-items-center",
"align-self-center",
"bg-body",
"bg-info",
"bg-opacity-10",
"bg-primary",
"bottom-0",
"bottom-bar",
"btn",
"btn-close",
"btn-primary",
"col",
"col-12",
"col-lg-2",
"col-lg-4",
"col-md-2",
"col-md-4",
"col-md-8",
"col-md-auto",
"col-sm-12",
"col-sm-6",
"collapse",
"collapsed",
"container-fluid",
"container-xxl",
"d-block",
"d-flex",
"d-inline",
"d-lg-block",
"d-md-block",
"d-md-flex",
"d-md-none",
"d-none",
"d-sm-none",
"display-1",
"display-4",
"dropdown",
"dropdown-divider-bg",
"dropdown-item",
"dropdown-menu",
"dropdown-menu-end",
"dropdown-toggle",
"emphasis",
"end-0",
"fa",
"fa-10x",
"fa-2x",
"fa-book-open",
"fa-circle-half-stroke",
"fa-ellipsis",
"fa-face-frown",
"fa-fw",
"fa-github",
"fa-linkedin",
"fa-medium",
"fa-moon",
"fa-sun",
"fab",
"fas",
"feature",
"fixed-top",
"flex-column",
"flex-fill",
"flex-grow-1",
"flex-wrap",
"footer",
"form-control",
"fs-3",
"fw-30",
"fw-bold",
"h-100",
"img-fluid",
"img-wrap",
"invisible",
"is-search",
"justify-content-center",
"link-bg-footer",
"link-secondary",
"main-nav-toggler",
"mb-4",
"me-auto",
"middle-bar",
"min-vh-100",
"ms-auto",
"ms-md-3",
"mt-3",
"mt-5",
"mx-auto",
"mx-md-2",
"my-auto",
"nav-item",
"nav-link",
"navbar",
"navbar-brand",
"navbar-collapse",
"navbar-expand-md",
"navbar-nav",
"navbar-toggler",
"no-js",
"order-1",
"order-2",
"order-3",
"order-4",
"order-first",
"order-sm-2",
"order-sm-3",
"p-0",
"p-2",
"p-3",
"p-4",
"pb-5",
"pe-1",
"position-fixed",
"position-relative",
"px-3",
"px-4",
"px-xxl-0",
"py-2",
"py-5",
"py-md-1",
"ratio",
"ratio-16x9",
"rounded",
"row",
"row-cols-1",
"row-cols-sm-3",
"row-cols-sm-4",
"search",
"shadow",
"svg-inline--fa",
"switch-mode-collapsed",
"text-center",
"text-decoration-none",
"text-secondary",
"text-sm-start",
"theme-icon",
"theme-icon-active",
"toast",
"toast-body",
"toast-container",
"toast-header",
"toggler-icon",
"top-bar",
"vr",
"w-100"
],
"ids": [
"-theme",
"-theme-collapsed",
"navbar-0-collapse",
"search",
"suggestions",
"toast-container",
"toast-copied-code-message"
]
}
}

View File

@@ -1,6 +1,6 @@
{
"name": "@gethinode/hinode",
"version": "0.18.1",
"version": "0.18.2",
"description": "Hinode is a clean documentation and blog theme for Hugo, an open-source static site generator",
"keywords": [
"hugo",