I have often seen claims that doing any kind of crypto in (browser) javascript is dangerous. Does this fall into that trap? How can I safely share the URL to someone without already using an established encrypted communication method? Is the encryption key stored in my browser history?
The reason crypto in the browser is dangerous is because the crypto algorithms come from the server (they aren't built into the browser) so you have to verify them every time you go to the site to know they're doing everything properly. They could easily change them to no ops for you at the request of the NSA or whatever and you wouldn't know. So on the basis of that, I don't think this project avoids that problem
There is no meaningful distinction between Javascript being served from the server and an App being served from the App Store.