8db58dad63781fac25283da9ede1f38ea77bc335
Book to Static Site
This script will export all chapters and pages within a given book to a folder of basic HTML and image files which could act as a static site.
Once ran, you should be able to open index.html within the output folder to start browsing.
This is a very simplistic single-script-file example of using the book, chapter and pages API together, the output lacks a lot of detail including styling and inter-content link transforming.
This script is a slight modification of this script by ssddanbrown
Requirements
- php
~7.2+ - BookStack API
TOKEN_ID - TBookStack API
TOKEN_SECRET - Markdown CSS file. One can be found here http://markdowncss.github.io/
- A URL Slug of the desierd book you wish to export. e.g. https://bookstack.example.com/books/example-book
- A directory where you wish the book to be saved
Running
Download the script
curl https://gitea.apointless.space/bsncubed/bookstack-static-site/raw/branch/main/book-to-static.php > book-to-static.php
Export Variables
export BS_URL=https://bookstack.example.com # Set to be your BookStack base URL
export BS_TOKEN_ID=abc123 # Set to be your API token_id
export BS_TOKEN_SECRET=123abc # Set to be your API token_secret
export BS_CSS_FILE=style.css # Set to be the name of your CSS markdown file
Or, alternatively, you can modify the variables in the script manualy
Run the script
php book-to-static.php <book_url_slug> <output_dir>
An Example
# Export a book with URL slug of my_book to an "out" directory
php book-to-static.php example-book ./out
CSS
Move the CSS file to the Output Directory
Description
Languages
PHP
100%