Was feeling kind of unproductive at my software job on Friday (happens sometimes), and I had a website idea and sat down / coded it over the weekend. About 20 hours later I’ve got a good start, and I thought I’d toot my own horn here for a second because I’m pretty proud.
For non-techies:
I wrote a full stack web page, that provides End-to-End encrypted chat and I’m stoked that it’s working.
For the techies:
NextJS / React / Bootstrap
Typescript / eslint
Hasura / Postgres database backend
Custom credential extension of NextAuth using tweetnacl (sodium library wrapper), with client only private keys, signed timestamp based authentication tokens
Public / Private key box system for sharing common secret for encrypting messages. Private keys never touch server so no ability for anyone except recipients to read messaging.