Concept


While HTTP/HTML might be too heavy for some and people look for something like Gemini or Gopher, a static web site can be very light and a modern web server can serve up millions of requests without any problem. Therefore, the resource is less an issue for HTTP/HTML. The main problem is that HTML is too rich and can be too freely-designed for some. Such graphically rich content may actually less effective to read. Think about newspapers and magazines. Newspapers tend to have more or less similar layout and font style while magazine is more wildly designed. For text rich information, newspaper is more easy to read than magazine. This protocol aims to provide a way read long text without all the distractions.


Text format


Markdown is the basis of this text format. It can be read as plain text or as rich-format text. This protocol will use a subset of markdown to limit formatting so that more focus is put on content than formatting.


The supported markdown syntax will include




The goal is to have content not only viewable in graphic UI but also in text-based terminal UI.


Server


A regular web server serving files is sufficient. A custom server will be at the next stage.


Client


The first implementation of server will provide HTML format as response. Therefore, any web browser can be used to read the content. Custom clients will come later.


Clients can freely render the content. But to facilitate reading, it is suggested to render content from top to bottom without any side-by-side layout. For image and video, they can be rendered in its own block as small screenshot and viewed in pop-up for full size. Collection of images can be renders as a left-to-right images grid.


A navigation and search element will be provided. That fits the goal that this protocol can be used for API documentation. It is very important to provide user ways to jump among API documentation.


User input


User input will be available, but limited. The exact implementation is still under consideration. but the goal is to allow users not only read, but also write. It won't be a complete protocol without the ability to write.



rguiscard.flounder.online/