Commit Graph

39 Commits

Author SHA1 Message Date
Jeremy Kahn
d7287b5f6d
feat: [closes #86] Encrypted file transfers (#87)
* feat: [#86] encrypt torrent data before upload
* feat: [#86] decrypt torrent data after download
* feat: [#86] use room ID as encryption key
* feat: [#86] show alerts for encryption activity
* feat: [#86] show progress indicator while encrypting files
2023-02-11 17:29:57 -06:00
Nasal Daemon
8493ddade5
Give video display as much space as possible (#84)
* Move room tools to top of page to use full width
Allow messages to be hidden while video is displaying
Allow video display to utilise all available width
Track unread messages while they are hidden
* Better portrait behaviour
* Show room controls by default
* Show room controls at same time as app bar
Improve video height calc.

Co-authored-by: Jeremy Kahn <jeremyckahn@gmail.com>
2023-01-23 21:50:14 -06:00
Jeremy Kahn
fcedb1ba55
feat: Improve peer reconnections
* feat: use trystero@github:jeremyckahn/trystero#bugfix/29__clean-up-peers
2022-12-04 20:58:34 -06:00
Jeremy Kahn
ac4cb2d7e0 chore: use webtorrent 1.9.4 2022-11-28 20:46:03 -06:00
Jeremy Kahn
d10c047fec refactor: load webtorrent source 2022-11-28 20:45:45 -06:00
Jeremy Kahn
f006e76e80
feat: [closes #21] File sharing (#72)
* feat: [#21] stand up file sharing controls UI
* feat: [#21] implement basic file transfer
* feat: [#21] save transferred file
* feat: [#21] transfer file via WebTorrent
* fix: use external streamsaver assets
* feat: [#21] initiate download by receiver click
* fix: enable re-downloading of shared files
* feat: [#21] implement sharing of multiple files
* chore: enable offline development
* feat: cache torrents in IndexedDB
* feat: show alert when download is aborted
* feat: [#21] clean up torrent data when principal offerer rescinds it
* feat: clean up cached torrents on page unload
* feat: show file transfer progress
* fix: download files sequentially
* feat: clean up file transfers when leaving the room
* feat: clean up broken downloads upon leaving the page
* fix: allow download animation to complete
* feat: show tooltip for download button
* feat: make file transfers work in browser private modes
* feat: disable file share controls while creating offer
2022-11-24 00:16:34 -06:00
Jeremy Kahn
75a804abbd
feat: [closes #67] Screen sharing (#68)
* feat: [#67] stand up useRoomScreenShare hook
* feat: [#67] stand up RoomScreenShareControls
* feat: [#67] display screen share streams
* fix: [#67] don't flip screen share preview
* feat: don't display screen share controls in unsupported environments
* fix: [#67] always remove media streams for exiting peers
2022-11-13 17:11:09 -06:00
krayste
d4e565815c
feat: [closes #12] add qr code support (#63)
* Add initial QRCode implementation
2022-11-05 20:41:24 -05:00
Jeremy Kahn
ee7d528f01
feat: [closes #40] Disclaimer (#42)
* feat: [#40] stand up disclaimer page
* chore: use mui-markdown for disclaimer copy
* feat: [#40] add more disclaimer copy
* feat: style lists in messages
* refactor: author About page with Markdown
* feat: improve About page formatting
2022-10-16 21:49:04 -05:00
Jeremy Kahn
ebb80c3e6c chore: use trystero@0.11.4 2022-10-04 09:14:34 -05:00
Jeremy Kahn
b7c8ee6441 chore: upgrade to trystero 0.11.3 2022-09-19 11:51:49 -05:00
Jeremy Kahn
f884bf69ae chore: [#5] use Node 16
This is necessary for compatibility with Vercel, the platform being used
for preview deployments.
2022-09-10 18:34:11 -05:00
Jeremy Kahn
50d622d9f9 chore: use trystero 0.11.2 2022-09-08 22:12:32 -05:00
Jeremy Kahn
5b69f48229 feat: automatically transform URLs into links 2022-09-08 09:37:38 -05:00
Jeremy Kahn
59a93c6fd0 feat: display user-friendly peer names 2022-09-04 09:39:18 -05:00
Jeremy Kahn
2e30f53b39 chore: use local tracker for development 2022-08-29 19:21:14 -05:00
Jeremy Kahn
ac4b7d6d70 feat: support code syntax highlighting 2022-08-28 18:19:14 -05:00
Jeremy Kahn
fd9998fc2c feat: improve layout of room 2022-08-26 09:39:01 -05:00
Jeremy Kahn
b8f8bb5bfd feat: persist userId 2022-08-20 16:52:47 -05:00
Jeremy Kahn
7cb7e5fdd5 fix: prevent rerenders from breaking room connection 2022-08-16 21:57:39 -05:00
Jeremy Kahn
519e27b5c2 feat: join peer room 2022-08-13 12:11:59 -05:00
Jeremy Kahn
36d059329c feat: add room name input text field 2022-08-10 09:42:15 -05:00
Jeremy Kahn
98dc1d9ff1 chore: install react-markdown 2022-08-09 21:56:55 -05:00
Jeremy Kahn
5daf919bd0 chore: use GPL license 2022-08-09 09:28:00 -05:00
Jeremy Kahn
1e50620456 chore: add trystero 2022-08-08 21:59:40 -05:00
Jeremy Kahn
c6cdbdb8ef chore: set up react-router-dom 2022-08-08 21:58:32 -05:00
Jeremy Kahn
3d1105962c fix: use @testing-library/react@12 2022-08-08 21:47:38 -05:00
Jeremy Kahn
05ce67e982 chore: set up material UI 2022-08-08 21:43:16 -05:00
Jeremy Kahn
5c252bf84a chore: set up sass 2022-08-08 21:15:22 -05:00
Jeremy Kahn
66f4a966f0 chore: set up tailwind 2022-08-08 21:11:30 -05:00
Jeremy Kahn
b901793659 chore: set up Typescript 2022-08-08 21:04:37 -05:00
Jeremy Kahn
ffec853231 chore: change homepage to chitchatter.im 2022-08-08 20:15:39 -05:00
Jeremy Kahn
bd105f2a91 chore: set up eslint 2022-08-08 20:04:04 -05:00
Jeremy Kahn
b39d8e89c3 chore: set up prettier 2022-08-07 21:59:46 -05:00
Jeremy Kahn
314ca1ce5a chore: set up husky 2022-08-07 21:53:00 -05:00
Jeremy Kahn
61ab303a7f chore: set homepage 2022-08-07 21:46:03 -05:00
Jeremy Kahn
f44fe225a8 chore: use node 18 and npm 8 2022-08-07 21:36:52 -05:00
Jeremy Kahn
16a4d29e03 chore: set up initial config 2022-08-07 21:08:47 -05:00
Jeremy Kahn
eb8c0e3852 Initialize project using Create React App 2022-08-07 21:06:40 -05:00