Refactoring Gemini Clients Part 2
The client infrastructure consists of:
- Requestor - network component, TLS
- UI - page display, interaction
- URengine - bookmarks, history, labels
- Handlers - Gemtext, Markdown, etc.
The requestor communicates with the network and gets pages. It passes the data to UI.
The UI presents the user with a page view. UI uses handlers to translate page data to a visual format, extract, label and otherwise prepare links for navigation. UI then coordinates user interaction for navigation, bookmark maintenance, etc.
URengine provides URI services to the UI. It normalizes URIs, assigns labels, maintains a database, keeps a history, and provides a bookmark database.
Handlers translate a page format such as Gemtext, Markdown, etc. to the internal display format.
/gemlog/