hannesm / jackline

minimalistic secure XMPP client in OCaml
BSD 2-Clause "Simplified" License
251 stars 20 forks source link

Separate UI from state / network engine #107

Open cfcs opened 8 years ago

cfcs commented 8 years ago

I think we should move towards having jackline communicate with the user using an IPC protocol for emitting and receiving UI events.

This would enable users to make their own UIs for jackline, and make customizing the UI easier. Some such a change would make possible:

Making this change would require identifying the UI interaction primitives we currently rely on. The ones I can remember off the top of my head:

Thoughts?

hannesm commented 8 years ago

not yet in scope. there are more pressing issues. but src contains UI-independent code, whereas cli has a command-line interface.

hannesm commented 8 years ago

There's huge progress being done in this direction (by switching to notty terminal library which just landed in master)... still not separate libraries, though.

cfcs commented 8 years ago

I forgot message notifications as discussed here: https://github.com/hannesm/jackline/issues/118