iocaine 2.4.1

The deadliest poison known to AI
Documentation
Hacking on iocaine
==================

Assuming you have rust and cargo installed, you can build iocaine with:

```bash
cargo build
```

You can use the `maze-data/` directory to store your textual sources and configuration:

```bash
mkdir maze-data

# For convenience, we use the README as a markov source.
# A longer document would be better.
cp README.md maze-data/markov.txt

# Build a word list from the markov source
cat maze-data/markov.txt | tr -s ' ' '\n' | sed 's/[^a-Z]*//g' | sort | uniq > maze-data/words.txt

# Copy the templates for easier editing
cp -r templates/* maze-data/

# Create a config.toml file
cat > maze-data/config.toml <<EOF
[server]
  bind = "0.0.0.0:42069"

[templates]
  directory = "maze-data/"

[sources]
  words = "maze-data/words.txt"
  markov = ["maze-data/markov.txt"]

[generator]
initial_seed = ""
EOF

```
To build and run iocaine with your local changes, run:

```bash
cargo run -- --config-file maze-data/config.toml
```

If you have epubs around and `pandoc` installed, you can very easily build a word list and a markov source like this:

```bash
pandoc maze-data/*.epub -t plain > maze-data/markov.txt
cat maze-data/markov.txt | tr -s ' ' '\n' | sed 's/[^a-Z]*//g' | sort | uniq > maze-data/words.txt
```

Run tests with:

```bash
cargo test
```