2019-12-02 14:31:00 +00:00
|
|
|
# koushin
|
|
|
|
|
2019-12-11 13:05:16 +00:00
|
|
|
[![GoDoc](https://godoc.org/git.sr.ht/~emersion/koushin?status.svg)](https://godoc.org/git.sr.ht/~emersion/koushin)
|
|
|
|
|
2019-12-02 14:31:00 +00:00
|
|
|
## Usage
|
|
|
|
|
2019-12-03 14:21:59 +00:00
|
|
|
go run ./cmd/koushin imaps://mail.example.org:993 smtps://mail.example.org:465
|
2019-12-02 14:31:00 +00:00
|
|
|
|
2019-12-04 17:30:01 +00:00
|
|
|
See `-h` for more information.
|
|
|
|
|
|
|
|
## Themes
|
|
|
|
|
|
|
|
They should be put in `public/themes/<name>/`.
|
|
|
|
|
|
|
|
Templates in `public/themes/<name>/*.html` override default templates in
|
|
|
|
`public/*.html`. Assets in `public/themes/<name>/assets/*` are served by the
|
|
|
|
HTTP server at `themes/<name>/assets/*`.
|
|
|
|
|
2019-12-09 15:02:12 +00:00
|
|
|
## Plugins
|
|
|
|
|
|
|
|
Lua plugins are supported. They can be dropped in `plugins/*.lua`.
|
|
|
|
|
2019-12-09 16:55:52 +00:00
|
|
|
API:
|
|
|
|
|
|
|
|
* `koushin.on_render(name, f)`: prior to rendering the template `name`, call
|
|
|
|
`f` with the template data
|
|
|
|
* `koushin.set_filter(name, f)`: set a template function
|
2019-12-10 15:00:50 +00:00
|
|
|
* `koushin.set_route(method, path, f)`: register a new HTTP route, `f` will be
|
|
|
|
called with the HTTP context
|
2019-12-09 15:02:12 +00:00
|
|
|
|
2019-12-10 15:08:08 +00:00
|
|
|
## Contributing
|
|
|
|
|
|
|
|
Send patches [on the mailing list](https://lists.sr.ht/~sircmpwn/koushin),
|
|
|
|
report bugs [on the issue tracker](https://todo.sr.ht/~sircmpwn/koushin).
|
|
|
|
|
2019-12-02 14:31:00 +00:00
|
|
|
## License
|
|
|
|
|
|
|
|
MIT
|