ayn2op / discordo

A lightweight, secure, and feature-rich Discord terminal client.
MIT License
2.26k stars 71 forks source link

Potentially reuse code from ningen + arikawa #186

Open diamondburned opened 2 years ago

diamondburned commented 2 years ago

Firstly, it's great that someone is rewriting 6cord into something better and more maintainable! A lot of people have asked me to continue maintaining 6cord, but its codebase was written when I did not know any better, so maintaining it is near impossible. I'm glad that someone finally did the hard work for everyone else.

During that time, I have made various other Discord clients along the way, and have put most of that work into one unified library for making clients, ningen.

ningen provides:

Immediately, these features will benefit implementing issues #129 and #167, as well as potentially reducing some existing code in the program.

v3 of the library uses arikawa/v3.

As a side note, code from gtkcord4 may be of use. It also uses ningen to do some of its work.

I hope you'll find this library useful in implementing more features for this application.

ghost commented 2 years ago

Hello there, ningen looks awesome! Can you list some examples that use the discordmd package in the README.md file.

diamondburned commented 2 years ago

Can you list some examples that use the discordmd package in the README.md file.

I can, but that's probably not a very high priority of mine right now. I'll just put some resources right here in the meantime:

This uses goldmark, so most of goldmark's examples somewhat apply. Beware that goldmark's parsing and rendering is heavily HTML-specific, as it assumes a lot of the parsing/rendering quirks are handled by the browser.