This is not a standalone theme. This is a Hugo theme component.

To use this:

1. Clone this repo to ~your-site/themes/hugo-search-fuse-js~
   directory. /Note that the theme name has to remain
   ~hugo-search-fuse-js~./
2. Add "hugo-search-fuse-js" as the left-most element of the ~theme~
   list variable in your site's or theme's ~config.toml~. Example:
   #+begin_example
   theme = ["hugo-search-fuse-js", "my-theme"]
   #+end_example
3. Create ~content/search.md~ with ~layout~ parameter set to "search",
   and ~output~ parameter set to ~["html", "json"]~. The content or
   body of this ~search.md~ is not used by the ~search.html~ template
   (that template is a part of this theme component).

   Here is an example ~search.md~:
   #+begin_src md
   +++
   title = "Search"
   layout = "search"
   outputs = ["html", "json"]
   [sitemap]
     priority = 0.1
   +++
   #+end_src

* Requirements
For this theme component to work as-is:
1. Your main theme must be structured using [[https://gohugo.io/templates/base/#define-the-base-template][*base template and
   blocks*]], and
2. The *base* template needs to define *main* and *footer* blocks
   (shown in that previous link).

If the main theme does not meet these requirements, you will need to
edit the [[https://github.com/kaushalmodi/hugo-search-fuse-js/blob/master/layouts/_default/search.html][*search.html*]] in this component to make the search work.
** What if the main theme does not have *baseof.html*?
You will then need to edit the ~search.html~ to make it fit your
theme. Else, you can upgrade the theme to use the more canonical "base
template and blocks" approach.
** What if the main theme has *baseof.html*, but doesn't have the *main* and/or *footer* blocks?
It's very easy to add those blocks without breaking your existing
theme.

To add the *main* block, add this to your ~baseof.html~ at the
appropriate place:
#+begin_src go-html-template
{{ block "main" . }}{{ end }}
#+end_src

And similarly add the below if the *footer* block is missing:
#+begin_src go-html-template
{{ block "footer" . }}{{ end }}
#+end_src

For an example, see the [[https://gohugo.io/templates/base/#define-the-base-template][*baseof.html* snippet in Hugo docs]].
* Credits
This theme component is possible because of all the groundwork done by
[[https://github.com/eddiewebb][@eddiewebb]] in [[https://gist.github.com/eddiewebb/735feb48f50f0ddd65ae5606a1cb41ae][this gist]].
