diff --git a/hack/firehose-proxy.sh b/hack/firehose-proxy.sh
new file mode 100755
index 00000000..8a87fd47
--- /dev/null
+++ b/hack/firehose-proxy.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+set -euo pipefail
+
+upstream="${1:-"wss://bsky.network"}"
+echo "listening on port 8765"
+
+websocat --binary -E ws-l:0.0.0.0:8765 $upstream/xrpc/com.atproto.sync.subscribeRepos
\ No newline at end of file
diff --git a/js/app/components/chat/chat-box.tsx b/js/app/components/chat/chat-box.tsx
index 7c98b0f4..0dc5de2c 100644
--- a/js/app/components/chat/chat-box.tsx
+++ b/js/app/components/chat/chat-box.tsx
@@ -5,7 +5,10 @@ import {
selectIsReady,
selectUserProfile,
} from "features/bluesky/blueskySlice";
-import { usePlayerLivestream } from "features/player/playerSlice";
+import {
+ LivestreamViewHydrated,
+ usePlayerLivestream,
+} from "features/player/playerSlice";
import {
chatWarn,
selectChatWarned,
@@ -26,6 +29,7 @@ export default function ChatBox({ isPopout }: { isPopout?: boolean }) {
const livestream = useAppSelector(usePlayerLivestream());
const textAreaRef = useRef(null);
const dispatch = useAppDispatch();
+ const navigate = useNavigation();
const submit = () => {
if (!isWeb) {
Keyboard.dismiss();
@@ -49,7 +53,19 @@ export default function ChatBox({ isPopout }: { isPopout?: boolean }) {
return (
- {loggedOut && }
+ {loggedOut && (
+
+
+
+
+ )}
{!loggedOut && (