A webmail client. Forked from https://git.sr.ht/~migadu/alps
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
 
 
 
 
Simon Ser 97b314b6e7
Add Server.Reload
4年前
cmd/koushin Make New return the Server 4年前
plugins/base Add Server.Reload 4年前
themes themes/sourcehut: add search input to mailbox view 4年前
.gitignore Introduce base plugin 4年前
LICENSE Correct license ownership 4年前
README.md Allow Lua plugins to inject all templates 4年前
go.mod Add a form to set message flags 4年前
go.sum Add a form to set message flags 4年前
imap.go Introduce base plugin 4年前
plugin.go Add Context to Plugin.Inject 4年前
plugin_go.go Make Go plugin handlers take a *Context 4年前
plugin_lua.go Add Context to Plugin.Inject 4年前
server.go Add Server.Reload 4年前
session.go Document that plugins don't have access to passwords 4年前
smtp.go Introduce base plugin 4年前
template.go Add Server.Reload 4年前

README.md

koushin

GoDoc

Usage

go run ./cmd/koushin imaps://mail.example.org:993 smtps://mail.example.org:465

See -h for more information.

Themes

They should be put in themes/<name>/.

Templates in themes/<name>/*.html override default templates in plugins. Assets in themes/<name>/assets/* are served by the HTTP server at /themes/<name>/assets/*.

Plugins

Plugins can be written in Go or in Lua and live in plugins/<name>/.

Plugins can provide their own templates in plugins/<name>/public/*.html. Assets in plugins/<name>/public/assets/* are served by the HTTP server at /plugins/<name>/assets/*.

Go plugins

They can use the Go plugin helpers and need to be included at compile-time in cmd/koushin/main.go.

Lua plugins

The entry point is at plugins/<name>/main.lua.

API:

  • koushin.on_render(name, f): prior to rendering the template name, call f with 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, f will be called with the HTTP context

Contributing

Send patches on the mailing list, report bugs on the issue tracker.

License

MIT