keybase uses Go for cryptography https://github.com/keybase/client instead of Javascript
https://github.com/ProtonMail/WebClient uses OpenPGP.js but they also use Go as well https://github.com/ProtonMail/gopenpgp
Go handles encryption well with vetted libraries and implmentations built into the stdlib. However, using Go on websites might be challenging without asm so it's more common that people seem to use openpgp and keep the Go libs for electron/mobile apps.
React Webcrypto AES-GCM with Keys
JavaScript Crypto Libraries
https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/generateKey
https://github.com/dchest/tweetnacl-js (audited)
https://github.com/NetsydeMiro/leancrypt/blob/master/src/LeanCrypt.ts
Uint8Array for encrypted data: https://stackoverflow.com/questions/8936984/uint8array-to-string-in-javascript (https://stackoverflow.com/a/14078925/99923)