Proprietary chat services suck. The Polyphony project aims to change that by developing @polyproto, a federated identity and trusted message exchange protocol, as well chat software and -standards built on top of it. We are building sonata (a polyproto home server for identity federation), symfonia (a chat server implementing polyproto-chat), and a client to tie it all together. Our goal is a federated chat experience that feels at least as polished and easy to use as proprietary alternatives.
Through the MPL-2.0 license, we ensure that our software can be used by anyone, for any(-ish) purpose. The only major thing we ask is that improvements and changes to our software stay open source as well. Our software should benefit the public, not corporations.
Additionally, our Code of Conduct is a modified version of the Contributor Covenant, explicitly including otherkin and plural individuals and explicitly banning AI contributions.
An anti-establishment establishment
🏳️⚧️ Trans rights are human rights. Be gay, do crime, free palestine!
A roadmap for the work scheduled for sonata, our polyproto-core home server. After the first release in December, we'd like to pivot most of our efforts onto building polyproto-chat with a server and a first, usable client. 💜
I think if we can make a chat app where when you use it you feel like you are listening to I Love My Computer by Ninajirachi then that would be an immense success.
A roadmap for the work scheduled for sonata, our polyproto-core home server. After the first release in December, we'd like to pivot most of our efforts onto building polyproto-chat with a server and a first, usable client. 💜
Today in sonata, basic logic for fetching and verifying actor ID-certs from peers was implemented. Required next steps are persisting these in the database and adding more checks for full polyproto spec compliance
Next up, proper loading/storing of actor certificates to/from the database, and resolving them from other servers! Then, we are 80% of the way there to finally supporting actor certificates as well :)
We also implemented JSON canonicalization in sonata today! Responses now get correctly canonicalized, and requests get checked for proper canonicalization on arrival.
"Incidental", because the mascot wasn't something I explicitly mentioned as part of the commission. The artist just included it, and it was love at first sight