Commit Graph
95 Commits
Author SHA1 Message Date
talksik a9a51f499e ui tweaks 2026-04-07 15:31:10 -07:00
talksik 4a4e09ae0b show stream state in stream-view 2026-04-07 15:31:07 -07:00
talksik d4b0545598 ui tweak 2026-04-07 15:13:47 -07:00
talksik ff6891f57e support open / closed streams
- Tabs for viewing separately
- Context menu to close / open streams
- Update stream particle status field
2026-04-07 15:09:22 -07:00
talksik 5ec24d9542 cleanup message retention code 2026-04-07 14:42:06 -07:00
talksik e7384cb45c refactor: use interfaces for function params 2026-04-07 14:21:34 -07:00
talksik c5525bb980 reduce footprint of closing indicator 2026-04-01 11:43:33 -07:00
talksik e117f58dbe tidy bottom section of stream-view 2026-04-01 11:28:54 -07:00
talksik 7c77d02ab5 feat: show human playback markers on timeline
Resolves #105
2026-04-01 11:02:48 -07:00
Arjun PatelandGitHub 4d1ad717ad support huddles (#106)
* add token endpoint for livekit

* fix: invalid type passed to hook

* fix: inject livekit env variables for orion

* fix: show controls indicator above stream # shortcut

* return livekit server url from api

* simple huddle implementation with streams

* set human name in livekit room context

* simplify deployment tooling

* join huddle with audio automatically

* feat: show when there is an active huddle

This introduces a webhook which listens to events from livekit and
updates our firestore stream particle. It keeps the client simple,
reacting to changes to firestore docs.

* use headphones icon for huddles

* fix: screenshare not working in electron

The default VideoConference component from livekit doesn't support
screenshare in electron. This attempts to compose our own layout with
livekit components ourselves and introduces our own flow for
screenshare.
2026-04-01 10:32:15 -07:00
talksik 47e2a9baa4 fix: audio bars overlap with bottom controls 2026-03-31 15:08:31 -07:00
Arjun PatelandGitHub 3de3ca7cef setup electron multi-window architecture (#102)
* prototype with two windows

* use deps in separate window render process

* enhance autoplay into desktop overlay

* fix: autoplay window not applying tailwind styles
2026-03-31 15:05:59 -07:00
talksik ffb4ae6c5a cleanup unused import 2026-03-30 14:01:49 -07:00
talksik 7a8b31dbcb cleanup unused import 2026-03-30 13:57:22 -07:00
talksik a5e1ea1acf feat: show unseen count in macos dock
Resolves #93
2026-03-30 13:53:50 -07:00
talksik d10de739b3 show indicator of stream expiring soon 2026-03-30 13:33:02 -07:00
talksik d56541bd13 feat: allow network admin to control ephemerality setting
Resolves #92
2026-03-30 13:27:27 -07:00
talksik 7f93aa9db3 reduce blur for thumbnails 2026-03-30 12:53:35 -07:00
talksik 086cf4f1ee keyboard-driven navigation
Resolves #66
2026-03-30 12:51:15 -07:00
talksik 14285575e4 default to 4 / 3 aspect ratio for videos
This also sets the default window size to adhere to the default aspect
ratio
2026-03-30 12:35:48 -07:00
talksik 9f6633bf1f feat: add grid view for streams 2026-03-30 12:08:16 -07:00
talksik 76c538dca2 enhance text compose experience 2026-03-30 11:34:53 -07:00
talksik c797d7253e improve attachments experience for media particles 2026-03-30 11:27:33 -07:00
Arjun PatelandGitHub d6280439d0 feat: support file and image attachments (#98)
* upload & view attachments to particles

* allow download of attachments
2026-03-30 10:31:24 -07:00
talksik 8cb9eb55c7 chore: cleanup network selector ui 2026-03-25 16:08:55 -07:00
talksik f3ddceecfc fix: persist auto-play setting 2026-03-25 16:03:14 -07:00
talksik 60daec38ff fix: allow text selection and copy
This was conflicting with the left and right tap areas for navigating a
stream.
2026-03-25 15:56:48 -07:00
talksik 739bb0cf80 fix: fullscreen button not working 2026-03-25 15:54:42 -07:00
talksik 0ab2ec2bb8 fix: stale time ago in streams list 2026-03-25 15:53:35 -07:00
talksik d817e637c0 fix: janky captions experience 2026-03-25 15:41:25 -07:00
talksik 3c1d9cd4a7 feat: improved layout and captions 2026-03-25 15:05:38 -07:00
talksik 986a389606 feat: generate transcript and event-driven particle processing
This generates the transcript and shows the caption experience on the
client side for media particles. It also simplifies other side effects
that we must perform such as updating the `last_child_created_at` field
for stream and container particles.
2026-03-25 14:43:47 -07:00
talksik 0111ea28af refactor!: use consistent structure for particles
Making the firestore subcollections the same name helps with creating
indices and queries across subcollections of different depths. This also
prevents the need for conditional logic for network root / top-level
particles.
2026-03-25 13:14:08 -07:00
Arjun PatelandGitHub 3d52fa6ccc feat: create network, and manage members, invitations (#74) 2026-03-24 19:50:06 -07:00
Arjun PatelandGitHub bf0147d542 refactor: reference human id instead of email (#73)
* refactor: update api and client to reference humanIds

* fix: prevent deletion of network member

This may cause various side effects if there is data in other services
which reference this member
2026-03-24 19:48:02 -07:00
talksik 3bf3f16be7 fix: auto-select myself as new stream's member 2026-03-24 11:29:14 -07:00
talksik 83190727f8 fix: show last sender avatar in streams list 2026-03-24 11:10:56 -07:00
talksik 6f033e2a73 feat: jump to my newly created particle once created 2026-03-24 10:27:50 -07:00
talksik 1fb31a0d04 chore: show submitting loader during compose 2026-03-24 09:58:50 -07:00
talksik 33a1318958 fix: hide author in "seen by" list 2026-03-24 07:29:13 -07:00
talksik fa91ce0382 fix: prefetch media warning
This is due to the "audio" and "video" preload having limited support in
browsers.
2026-03-24 07:27:23 -07:00
talksik 161c89acf7 feat: resume playback on the clip after we left off 2026-03-24 07:13:08 -07:00
talksik 97b2e7914e feat: filter to ephemeral streams and particles 2026-03-21 18:55:03 -07:00
talksik 356a166c7e chore: remove mic icon from autoplay overlay 2026-03-21 18:47:07 -07:00
talksik e61f838a98 feat: allow toggling eavesdropping 2026-03-21 18:34:41 -07:00
talksik 59ffa7ad6e feat: preload adjacent media in streams 2026-03-21 18:24:03 -07:00
talksik f6ee5e998a feat: play sound effect on new text particle 2026-03-21 18:06:58 -07:00
talksik 4a4d213eb6 feat: autoplay inbound clips 2026-03-21 17:59:41 -07:00
talksik 18f587864f fix: prevent resize of window
Users fiddling with window and complaining.
2026-03-21 16:58:44 -07:00
talksik 8168b7d8f5 fix: prevent duplicate artifact creation 2026-03-21 16:38:37 -07:00