go run ./cmd/koushin imaps://mail.example.org:993 smtps://mail.example.org:465
-h for more information.
They should be put in
themes/<name>/*.html override default templates in plugins.
themes/<name>/assets/* are served by the HTTP server at
Plugins can be written in Go or in Lua and live in
Plugins can provide their own templates in
plugins/<name>/public/assets/* are served by the HTTP server at
They can use the Go plugin helpers and need to be included at compile-time in
The entry point is at
koushin.on_render(name, f): prior to rendering the template
fwith the template data (the special name
*matches all templates)
koushin.set_filter(name, f): set a template function
koushin.set_route(method, path, f): register a new HTTP route,
fwill be called with the HTTP context
Lua plugins and templates can be reloaded by sending
SIGUSR1 to koushin.
killall -USR1 koushin