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.
- Realtime chat using Hasura subscriptions
Anyway, that is all.