lisplizards / vinland-todo-app

Example app for the Vinland web framework
Apache License 2.0
3 stars 0 forks source link

Vinland To Do App

Demo: create and manage To Do lists

This application is an example of the Vinland web framework.

App demo

Features:

Technologies:

Tested on SBCL.

Installation

It is strongly recommended to use Qlot to manage the project dependencies.

Once you have Qlot installed, clone this repository and install the dependency versions specified in qlfile.lock:

qlot install

Build

After installing dependencies with Qlot, build the program by running:

qlot exec sbcl --eval '(asdf:make :vinland-todo-app)'

The binary is written to ./bin/todo-app.

The application writes Rucksack data to /tmp/todo-app.

Run

./bin/todo-app start -p 8080 -a 0.0.0.0 -w 4

Development

Woo is used as the server when starting the application from the generated binary (see: src/cli.lisp).

You may prefer to start the server from the REPL using clack, which allows for specifying Hunchentoot or another alternative server backend.

Start a REPL, using the Qlot-installed dependencies:

rlwrap qlot exec sbcl

Start the server:

(ql:quickload '("vinland-todo-app" "clack"))

(clack:clackup todo-app/app:*app* :port 8080 :server :hunchentoot :use-default-middlewares nil :debug nil)

Troubleshooting

To clear the Rucksack database, delete the directory /tmp/todo-app.

Contributing

Not accepting PRs to this repo, but feel free to open an Issue on GitHub if there's a problem.

Dependencies

Tests

JavaScript

Author

Copyright

Copyright (c) 2024 John Newton

License

Apache-2.0