Protocol for TUIOW (terminal user interface over the wire)
Protobuf definition currently used for gRPC and is compiled for Golang and Python.
Docs are generated using the handy protoc-gen-doc package and can be found here.
See the samples folder for some "hello world" example servers in Go and Python. View them with the uggly-client. For more advanced server examples check out the following:
- uggly-server - a server that hosts sites from static files.
- uggly-server-login - a server that gives examples of login flows and cookie usage
- puggly-server - a python server that shows dynamic navigation of a CSV using keyboard shortcuts
Uggly is a means to generate Terminal User Interfaces in a client-server architecture. Think of it as TUI over-the-wire (TUIOW). The client requests content from the server via gRPC protobuffers and the client handles rendering of that content. The server is sending "pages" of content one screen at a time. The protocol and page definitions take inspiration from CSS/HTML in that there are constructs such as DivBoxes, TextBlobs, Links, and Forms for example. It is opinionated in that only keyboard strokes are supported for link navigation.