Skip to content

5dbwat4/notebookshelf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Notebookshelf

Notebook | bookshelf

Like mkdocs search, but across multiple sites.

Find multiple mkdocs sites, and want to search something, but don't want to search them one by one? Notebookshelf is here to help you. It can index multiple mkdocs sites, and provide a unified search interface for you to search across all the indexed sites.

How to run (docker)

  1. Clone the repository.
  2. Configure which sites you want to index in bookshelf directory. Each site should have a search_index.json file, which is generated by mkdocs with the search plugin.

Usually if the site has a search box, it should have the search_index.json file by adding /search/search_index.json to the site URL. For example, if the site URL is https://example.com/docs/, then the search index file should be at https://example.com/docs/search/search_index.json.

cp config.example.yml config.yml

Then edit config.yml to add the paths to the search_index.json files of the sites you want to index.

  1. Then you can run Notebookshelf with Docker:
docker compose build
docker compose up
  1. Open http://localhost:8787 in your browser, and you will see the search interface.

Run locally without Docker

For frontend:

cd frontend
npm install
npm run dev # for development
npm run build && cp -r dist/* ../bookshelf/public/ # for production

For backend:

cd backend
npm install
npm run server

About

Like mkdocs search, but across multiple sites.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors