We have a menu!
It doesn't do anything yet, but it exists, and is navigable.
It was also much more difficult than it should have been to set up, for reasons I never would have predicted.

seen from Cambodia
seen from Bangladesh
seen from Netherlands

seen from Italy
seen from Belgium

seen from Malaysia
seen from Brazil
seen from United Kingdom

seen from China

seen from Norway
seen from China

seen from Norway

seen from France

seen from Malaysia

seen from Malaysia

seen from United Kingdom
seen from United States
seen from China
seen from United States
seen from Brazil
We have a menu!
It doesn't do anything yet, but it exists, and is navigable.
It was also much more difficult than it should have been to set up, for reasons I never would have predicted.
May this be our prayer, that God will use our mouths to declare praises and glory to Him.
For more daily reflection, verse and encouragement, you may follow us. You can also like, follow and visit us on:
Website: https://youngdisciples.org/
Facebook: https://www.facebook.com/yd153
Twitter: @YD153
Instagram: @youngdisciples2020
Pinterest: Young Disciples International
Notcurses has some of the worst documentation I've ever read.
I feel like I'm stumbling blind, trying to feel my way through its convoluted interfaces. The manpages barely help to answer my questions.
Proposal to have notcurses change its name to justcurses.
I regret choosing this stupid, broken-ass library.
When I finally got config negotiation working, I noticed that the muted colours looked too bright on kitty. So, I checked my palette initialization function, and noticed that I managed to invert the check for 8-colour palettes. I fixed it, and now the colours display mostly correct on the Linux TTY. So, good to know that isn't completely broken, and I'm just a twat. I can live with that.
One advantage to the design of my BBS is that there's nothing stopping someone from writing a replacement client. So if someone else doesn't like how broken the notcurses client is (I tried, okay. I swear it's notcurses' fault, not mine), they could write a curses/ncurses client. The protocol even allows for the client and server to use mismatched config versions. You are not required to rely on the provided client.
I wrote my own system to map palette indexes to RGB colours in order to try and work around how completely broken notcurses' palette indexed colours are. So far I only have the standard 16 colours, and because notcurses' palette quantizer doesn't account for palettes smaller than 256 colours, it doesn't always work on terminals that don't support the full 256 extended colour palette, like Linux's built-in virtual terminal (fbterm should work fine though).
Whatever. It works well enough that, as long as you're using a terminal that supports 256 colours (most do), it should work well enough.
Maybe, at a later date, I can rip notcurses apart myself, and fix all of it's stupid issues with palette indexed colours. That day is not today. Right now I just want things to function.
Apparently, palette indexed colours in notcurses are completely and utterly fucked, and, unless I want the tear the library apart and fix them myself (I really don't), there's nothing I can do about it.
Fuck me. I would have been better off implementing my own TUI library. At least then I wouldn't have to deal with this bullshit. I hate this so much.