Dominik Dalek @ geminiverse
No bells, no whistles, a journal of Soyuz development.
Soyuz is a WIP Gemini client. Rendering and keyboard/mouse interaction
are done through SDL. In its current exploratory phase it's written in
C# (.NET Core) and as such should run on any modern platform (Windows,
Linux, OSX). With time, once Gemini spec becomes semi-stable, business
logic will be ported over to C++17.
What exists today is a POC that is able to fetch a single gmi document
and display it using non-monospace font.
Primary goals
Primary goals can be summarized as:
- accepting gmi, ascii, ansi, txt
- proportional font support with text wrapping
- good support for monospace content
- support for JPG, PNG and GIF images
- configurable looks (desired wrapping width, colors, font sizes)
- support for keyboard and mouse navigation
- bookmarks and OS integration (links in other apps launch Soyuz)
Secondary goals
Secondary goals (a.k.a. maybe at some point I'll get to this):
- screen reader support
- i18n
- rendering AsciiDoc and reStructuredText
- support for SVG
- gopher protocol
Once Soyuz becomes a semi-usable browser, its source will be released
under an ISC or a BSD 2-Clause License (TBD).
Thoughts on the Gemini protocol and document format
I've got many, stay tuned.