summaryrefslogtreecommitdiff
path: root/README.md
blob: 3cbb194d4cf3783a450e3472658cfc593ada965d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
> [!warning]
> This project is still under active development. Features are incomplete and buggy. Do not use in production.

# tempest 

Convert `.lisp` files to `.html` templates using [spinneret](https://github.com/ruricolist/spinneret), meant for simple templating like [Hugo](https://gohugo.io/) themes and plain HTML pages.

## Usage 

First, build from source. Make sure you have [SBCL](https://www.sbcl.org/), [Quicklisp](https://www.quicklisp.org/beta/) and [make](https://www.gnu.org/software/make/) set up.

```shell
make build 
```

Then a binary named `tempest` will be produced. Run it. 

```shell 
# the following command all accept multiple arguments
./tempest build <dir>   # build all tempest .lisp in dir
./tempest build-each <file>  # build each specified tempest .lisp 
# watch, for now, only accpets one
./tempest watch <dir>   # watch for changes and build modified or created .lisp 
```

Only `.lisp` file whose content starts with `;;;; TEMPEST` will be built.

## Development

Make sure you have [SBCL](https://www.sbcl.org/), [GNU Make](https://www.gnu.org/software/make/) (or any other implementation) and [rlwrap](https://github.com/hanslub42/rlwrap) (not necessary, but used in some make commands) installed in your environment.

Start an REPL with tempest loaded.

```sh
make repl
```

Start a [Swank](https://github.com/brown/swank-client) server for [SLIME](https://en.wikipedia.org/wiki/SLIME), [conjure](https://github.com/Olical/conjure) for Neovim or your editor of choice.

```sh
make repl-server
```

Build binary.

```sh 
make build
```