Writing my own Gemini client?

I've been bored lately and can't find a project to pass time. Also, Lagrange is cool and all, but it also tends to crash randomly on my computer when I click on links. I know that many other clients already exist and probably fit my needs, but why not after all?

What would I want?

The sexy features

I'd want something relatively minimalist. At the end of the day, Gemini is a minimalist protocol and you only have a small set of features in the gemtext format you can use on your pages. I have noticed something nonetheless: I read text, I follow links and sometimes but rarely I may need two other things:

I know I would want a TUI client to reduce the load on my computer. After all, a GUI client is overkill with such a small protocol. I can display images using Sixel and probably add a command to open them externally using feh if I feel the need to.

Using a TUI client would have another perk: I could open http(s) links into Chawan directly, juggling with PTYs and never leave my browsing window. Currently if I really want to follow an http(s) link, I'd need to copy it and open a terminal to use Chawan and I find that a poor workflow. Not that I do it regularly, but still.

The more normal features

I enjoy tabs, opening many links in the background and come back to them when I stopped digging. For me a good browser needs that.

It would need bookmarks or other similar features to not have to search for the good stuff again. On the modern big web it is not necessary because most of what you want is restricted to a handful of giant web sites, but on the smol web it is a necessity. You spend time digging through capsules, blogs, links, obscure search engines that lead to contents you enjoy but would have been totally unable to find by yourself through a single search.

Also, last but not least, I'd want a TUI, not a CLI, to be able to format that good gemtext and interact with it (display images, follow links, go back, etc). It is obvious so I didn't think about it earlier in this way too long article thingy, but yes, I'd want that.