List-page search: supports searching titles, tags, and filenames, as well as wildcards, title:/tags: qualifiers, and fuzzy search
notebook-searcher — Hugo Blog Template
By cyrusn
A Hugo-based blog theme that provides search by title, tags, and filename on list pages, with built-in keyboard navigation, a scroll-tracking table of contents, and several content plugins.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 2
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Full keyboard navigation, with Tips provided on the example site
Scroll-tracking table of contents enabled by default, can be disabled with toc: false in front matter
Built-in Katex, abcjs, and mermaid plugin shortcodes, which must be explicitly enabled in front matter
Articles under /slide are loaded as RemarkJS slides
Template Details
Notebook Searcher is a blog theme for Hugo, hosted at cyrusn/notebook-searcher and licensed under MIT. The theme is positioned to add site search to note-style blogs: on the article list page, you can type keywords directly, and the search covers titles, tags, and filenames, with support for wildcards, title: and tags: field qualifiers, and fuzzy search.
Beyond search, the theme provides full keyboard navigation (the example site includes Tips explaining how to navigate), a scroll-tracking table of contents enabled by default (which can be disabled by setting toc to false in front matter), and three plugins—Katex, abcjs, and mermaid—plus RemarkJS slide support. Plugins are used via shortcodes; articles must explicitly enable the corresponding plugin in front matter for the related dependencies to be added to the page; articles under the /slide path are loaded with RemarkJS.
The theme's third-party dependencies (jQuery, Bootstrap, Font Awesome, lunr, remark, katex, abcjs, mermaid) are stored as files in the static/ directory, with filenames that do not include version numbers. The README provides download commands for each dependency and the versions recorded at the time; updating dependencies requires re-running the commands and updating that record. The repository was last updated in 2018, and the example site is run with hugo serve -D --themesDir ../.. --source ./exampleSite.
Is it right for your project?
Use Cases
- Adding site search to a Hugo note or blog without relying on external services
- Embedding mathematical formulas, sheet music, or flowcharts in articles
- Writing content in Markdown and presenting it directly as web slides
- Reading scenarios that require keyboard operation and a scroll-positioned table of contents
Suitable For
- Blogs built with Hugo that want searchable list pages
- Sites focused on notes and tutorials that need formula or diagram rendering
- Developers who accept manually managing third-party dependency files under static/
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Example site run command: hugo serve -D --themesDir ../.. --source ./exampleSite
- 2
Dependency files are located in static/, filenames do not include version numbers; when updating, replace them using the wget commands in the README and update the recorded versions accordingly
- 3
When using plugins such as Katex, abcjs, and mermaid, they must be explicitly enabled in the article front matter for the dependencies to be added to the page
- 4
The table of contents is enabled by default; to disable it, set toc: false in front matter
- 5
The repository was last updated in 2018, and dependency versions are old; before use, check compatibility with the current Hugo version
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis entry covers the free version in the public repository under the MIT license; the free scope is the code of that version and does not mean 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 limitations of liability are governed by the original license and applicable law.
Additional costs & items to verify
- Demo images, fonts, icons, and other third-party assets must be checked under their respective licenses and cannot be judged solely by the code's MIT license.
- External services such as domains, hosting, databases, payments, or AI may incur separate charges.
- When using plugins such as Katex, abcjs, and mermaid, the corresponding plugin must be explicitly enabled in the article front matter; otherwise the related dependencies will not be added to the page and the plugin will not work.
- Only articles located under the /slide path are loaded as RemarkJS slides; articles in other paths will not enable that slide rendering.
- The table of contents is enabled by default; to disable it, you must set toc: false in the article front matter.
- Third-party dependencies are stored as files in the static/ directory and filenames do not include version numbers; they must be downloaded and updated manually and cannot be version-managed automatically via a package manager.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
The post must enable the plugin *explicitly* in front matter so the corresponding dependencies will be added to the page.
Original README
Posts in `/slide` will be loaded with RemarkJS.
Original README
TOC is enabled by default, set `toc` to `false` in front matter to disable it
Original README
https://github.com/cyrusn/notebook-searcher/blob/master/LICENSE.mdhttps://github.com/cyrusn/notebook-searcher/blob/master/README.mdDependencies are placed in `static/`. Any versioning in file name is stripped.
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-11. 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
- GitHub
- Documentation and maintenance reference score
- Partly documented · 65 / 100
- Technologies
- Hugo
- Website type
- Blog
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
- 2018-09-02
- Screenshot last checked
- 2026-10-11
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.
Review declaration: [email protected] · 2026-10-13
Inspect the recorded source material
SHA-256: 95937c2021e323dba1e94c568407201a75abf3f2bd25a73d35a63898a1c3bb82
2026-10-11T19:22:36.865Z
Source file / repository# Notebook Searcher Searcher theme for [hugo](https://github.com/gohugoio/hugo) blog. ## Run the example site ``` sh # in `notebook-searcher/` hugo serve -D --themesDir ../.. --source ./exampleSite ``` # Features - search posts on list page - full keyboard navigation check `Tips` on example for navigation guide - TOC with scroll spy TOC is enabled by default, set `toc` to `false` in front matter to disable it - Katex plugin - abcjs plugin - mermaid plugin - RemarkJS slides Posts in `/slide` will be loaded with RemarkJS. See `exampleSite/slide/` for details. Several shortcodes are defined for the plugins. The post must enable the plugin *explicitly* in front matter so the corresponding dependencies will be added to the page. See `exampleSite/note/` for details. ## Search feature ``` # simply type the keyword to search words in title, tags or filename. e.g. `abcjs` # using wild card e.g. `abc*` # search keywords in title only e.g. `title: abcjs` # search keywords in tags only e.g. `tags: music` # fuzzy search # please note that lunrjs will return error message if you just type `~` # without number followed it e.g. abcde~2 ``` # Dependencies Dependencies are placed in `static/`. Any versioning in file name is stripped. `current version` below denotes the version in `static/`. To update dependencies, execute the following command and update `current version`. ## jQuery ```sh # current version v3.3.1 # jQuery for bootstrap (slim.min) wget https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.slim.min.js -O static/js/jquery.slim.min.js ``` ## Bootstrap ```sh # current version v4.1.1 # update from [Quick Start · BootstrapCDN by StackPath](https://www.bootstrapcdn.com/) wget https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.bundle.min.js -O static/js/bootstrap.bundle.min.js wget https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css -O static/css/bootstrap.min.css ``` ## Font Awesome ```sh # current version v5.1.0 # [Getting Started | Font Awesome](https://fontawesome.com/how-to-use/on-the-web/setup/getting-started?using=svg-with-js) wget https://use.fontawesome.com/releases/v5.1.0/js/all.js -O static/js/fontawesome-all.min.js ``` ## lunr ```sh # current version v2.3.0 # [lunr.js - cdnjs.com - The best FOSS CDN for web related libraries to speed up your websites!](https://cdnjs.com/libraries/lunr.js/) wget https://cdnjs.cloudflare.com/ajax/libs/lunr.js/2.3.0/lunr.min.js -O static/js/lunr.min.js ``` ## remark ```sh # current version v0.14.0 # [Home · gnab/remark Wiki · GitHub](https://github.com/gnab/remark/wiki#getting-started) wget https://remarkjs.com/downloads/remark-latest.min.js -O static/js/remark-latest.min.js ``` ## katex ```sh # current version 0.10.0-beta # update auto-renderer # [GitHub - Khan/KaTeX: Fast math typesetting for the web.](https://github.com/Khan/KaTeX) # [KaTeX/README.md at master · Khan/KaTeX · GitHub](https://github.com/Khan/KaTeX/blob/master/contrib/auto-render/README.md) wget https://cdn.jsdelivr.net/npm/katex@latest/dist/katex.min.css -O static/css/katex.min.css wget https://cdn.jsdelivr.net/npm/katex@latest/dist/katex.min.js -O static/js/katex.min.js wget https://cdn.jsdelivr.net/npm/katex@latest/dist/contrib/auto-render.min.js -O static/js/auto-render.min.js ``` ## abcjs ```sh # currrent version 5.1.2 # update abcjs # [paulrosen/abcjs: javascript for rendering abc music notation](https://github.com/paulrosen/abcjs) wget https://raw.github.com/paulrosen/abcjs/master/bin/abcjs_basic_5.1.2-min.js -O static/js/abcjs_basic-min.js ``` ## mermaid ```sh # currrent version 7.1.2 # update mermaid # [MermaidJS CDN](https://unpkg.com/[email protected]/dist/) wget https://unpkg.com/[email protected]/dist/mermaid.min.js -O static/js/mermaid.min.js ```
Explore similar templates
Compare previews and descriptions within the same stack and category.

hugo-PaperMod
A fast, clean, responsive Hugo theme for blogs and lightweight portfolios, with three layout modes (Regular, Home-Info, Profile), automatic and manual light/dark themes, Fuse.js client-side search, multilingual support, and built-in Open Graph, Twitter Cards, and Schema.org data.
Hugo · Portfolio

LoveIt
LoveIt is a clean, elegant, and feature-rich Hugo blog theme derived from LeaveIt and KeepIt, MIT-licensed. It offers light/dark modes, responsive layout, multilingual support, and search via Lunr.js or Algolia.
Hugo · Blog

hugo-coder
hugo-coder is a minimalist Hugo blog theme maintained by luizdepra under the MIT license. It provides a clean, text-focused blog appearance, configuration documentation in the docs directory, and a complete exampleSite with hugo.toml.
Hugo · Blog

blowfish
Blowfish is a Hugo personal website and blog theme built with Tailwind CSS 4, focused on lightness, simplicity, and content-first presentation.
Hugo · Blog

hugo-paper
hugo-paper is a simple, clean, and customizable Hugo blog theme configured through config.toml or hugo.toml.
Hugo · Blog

hextra
Hextra is a Hugo theme for documentation and blog sites, built on Hugo and Tailwind CSS with design referencing Nextra.
Hugo · Documentation
