The code for the main site, Includes BookStack docs.
2023-02-02 12:22:42 +00:00
.github Create FUNDING.yml 2021-09-15 22:22:40 +01:00
content Added v23.01.1 post 2023-02-02 12:22:42 +00:00
data/authors Added 500 stars blogpost and improved post meta 2017-03-05 18:12:15 +00:00
search Updated meilisearch config for latest version and current site state 2022-10-27 23:26:01 +01:00
static Added v23.01.1 post 2023-02-02 12:22:42 +00:00
themes/bookstack Updated personal twitter link to mastodon. 2023-01-26 17:39:02 +00:00
.gitattributes Prepared 10k stars blogpost 2022-09-13 14:01:36 +01:00
.gitignore Updated meilisearch config for latest version and current site state 2022-10-27 23:26:01 +01:00
config.toml Added remaining v22.09 main post sections 2022-09-07 11:46:28 +01:00
LICENSE Updates in Year of Licence. 2020-09-30 21:39:16 +05:30
package-lock.json Finalized v23.01 post, updated npm deps 2023-01-31 11:33:08 +00:00
package.json Finalized v23.01 post, updated npm deps 2023-01-31 11:33:08 +00:00
readme.md Updated meilisearch config for latest version and current site state 2022-10-27 23:26:01 +01:00

BookStack Site, Documentation & Blog

This project holds all the data for the https://www.bookstackapp.com/

This site is built using Hugo. Images are stored using git-lfs. The "extended" version of hugo must be used (Has support for certain features like WebP resize).

Data Locations

  • Blog Posts - content/posts
  • Docs - content/docs
  • Theme - themes/bookstack

Theme

The theme is custom made with snippets taken from the hugo capser theme.

SCSS is used for the styling. Install NPM dependencies via npm install or yarn then you can use npm run build to build the css and site once or npm run dev to watch for changes.

Search is handled via Meilisearch. A nightly scrape runs to index the site pages for search. This is all docker-based, and the configuration used can be found in the search/ directory of this repo. Note, for localhost usage with a port, "allowed_domains": ["localhost"], should be added to the scraper config.json. [ref].

Relevant Projects:

  • Meilisearch - The search engine used.
  • docs-scraper - Used to scrape the site to index.
  • docs-searchbar.js - The JS implementation used for the site search bar.
    • I copy in the latest CDN dist files into this project.
    • I edit the JS file to remove the "Powered by Meilisearch" logo to prevent external requests.