44 lines
1.3 KiB
Markdown
44 lines
1.3 KiB
Markdown
# 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.
|
|
|
|
## Requirements
|
|
|
|
- php (~7.2+)
|
|
- BookStack API ```TOKEN_ID```
|
|
- TBookStack API ```TOKEN_SECRET```
|
|
- Basic CSS file
|
|
|
|
## Running
|
|
|
|
Download the script
|
|
```bash
|
|
curl https://raw.githubusercontent.com/BookStackApp/api-scripts/main/php-book-to-static-site/book-to-static.php > book-to-static.php
|
|
```
|
|
|
|
Export Variables
|
|
```bash
|
|
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
|
|
```
|
|
Or, alterntively, you can modify the verables in the script manualy
|
|
|
|
Run the script
|
|
```bash
|
|
php book-to-static.php <book_url_slug> <output_dir>
|
|
```
|
|
|
|
*A url slug is the last part of the URL. In this case, that would be https://bookstack.example.com/books/**example_book***
|
|
## Examples
|
|
|
|
```bash
|
|
# Export a book with URL slug of my_book to an "out" directory
|
|
php book-to-static.php my_book ./out
|