Commit Graph

45 Commits

Author SHA1 Message Date
Codex
ad2e0ede42 web: fix auth session races, ws token drift, and unread clear behavior
Some checks failed
CI / test (push) Failing after 2m20s
2026-03-09 02:17:14 +03:00
7889c7a958 web: add sticker search and close formatting/media checklist items
Some checks are pending
CI / test (push) Has started running
2026-03-08 22:50:36 +03:00
ff4aa48a34 web: add markdown formatting keyboard shortcuts in composer
Some checks are pending
CI / test (push) Has started running
2026-03-08 22:43:09 +03:00
e233cab993 refactor(web): limit composer realtime events to typing and voice
Some checks are pending
CI / test (push) Has started running
2026-03-08 21:40:03 +03:00
119b423632 feat(web): remove circle video compose flow from web client
Some checks failed
CI / test (push) Has been cancelled
2026-03-08 21:35:58 +03:00
e59c60094f fix(voice): improve duration detection for new waveform playback
Some checks failed
CI / test (push) Has been cancelled
2026-03-08 20:46:57 +03:00
f0582bf4ab fix(composer): guard websocket and recorder race on chat switch
Some checks failed
CI / test (push) Failing after 1m32s
2026-03-08 20:42:19 +03:00
7453e1ec06 feat(realtime): emit recording_video activity in circle-video flow
Some checks failed
CI / test (push) Has been cancelled
2026-03-08 20:13:43 +03:00
9ffcf7b3ef perf(realtime): debounce typing start/stop events
Some checks failed
CI / test (push) Failing after 55s
2026-03-08 20:06:04 +03:00
c5b90bc91c fix(typing): stop indicator on blur and chat switch
Some checks are pending
CI / test (push) Has started running
2026-03-08 20:05:23 +03:00
ac82e25d16 feat(realtime): add voice/video recording activity events
Some checks are pending
CI / test (push) Has started running
2026-03-08 19:53:48 +03:00
a1436ca27f web(composer): center glyphs inside round action buttons
All checks were successful
CI / test (push) Successful in 50s
2026-03-08 19:28:38 +03:00
67752b9f47 web(mobile): compact composer under 390px and fix stale title draft in chat info
All checks were successful
CI / test (push) Successful in 41s
2026-03-08 19:20:04 +03:00
cb59f1063e web(mobile): tighten composer controls and solid settings drawer background
All checks were successful
CI / test (push) Successful in 37s
2026-03-08 19:17:58 +03:00
f91a6493ff web(mobile): fix composer layout overflow on narrow screens
All checks were successful
CI / test (push) Successful in 34s
2026-03-08 19:08:55 +03:00
0db741cb8e voice: harden recorder capture with mime fallback and chunked start
All checks were successful
CI / test (push) Successful in 26s
2026-03-08 18:52:02 +03:00
07e970e81f p2: add quote and code-block text formatting
All checks were successful
CI / test (push) Successful in 20s
2026-03-08 14:12:12 +03:00
a9106b7fa3 web: add giphy provider for gif search
All checks were successful
CI / test (push) Successful in 21s
2026-03-08 13:57:03 +03:00
b6175352d0 web: disable hardcoded tenor gifs and add configured fallback
All checks were successful
CI / test (push) Successful in 21s
2026-03-08 13:55:24 +03:00
688cf0dd39 feat(web): add Tenor-backed GIF search in composer
All checks were successful
CI / test (push) Successful in 22s
2026-03-08 13:41:35 +03:00
88ff11c130 feat(web): add favorites for sticker and GIF pickers
All checks were successful
CI / test (push) Successful in 21s
2026-03-08 13:38:55 +03:00
10b11b065f feat(web): add built-in sticker and GIF picker
All checks were successful
CI / test (push) Successful in 21s
2026-03-08 13:32:26 +03:00
eb0852e64d fix(web): keep editable text stable while typing
All checks were successful
CI / test (push) Successful in 21s
2026-03-08 13:25:28 +03:00
704781e359 feat(web): add message edit flow in context menu and composer
All checks were successful
CI / test (push) Successful in 24s
2026-03-08 13:22:57 +03:00
18596e6dab fix(web): enforce channel read-only and admin delete rules 2026-03-08 13:18:52 +03:00
072677b9ad feat(web): improve album layout and captions for multi-attachments
All checks were successful
CI / test (push) Successful in 31s
2026-03-08 13:07:53 +03:00
d2dd9aa01b feat(chat): add in-message attachments gallery and multi-file send
All checks were successful
CI / test (push) Successful in 19s
2026-03-08 13:06:00 +03:00
2af4588688 feat: improve voice recording UX and realtime state reconciliation
All checks were successful
CI / test (push) Successful in 20s
2026-03-08 12:44:15 +03:00
30169a3a27 feat: add waveform voice messages end-to-end
All checks were successful
CI / test (push) Successful in 23s
2026-03-08 12:40:49 +03:00
4fe89ce89a feat(web): service-worker notifications and composer/scroll UX fixes
Some checks failed
CI / test (push) Failing after 21s
- register notifications service worker and handle click-to-open chat/message

- route realtime notifications through service worker with fallback

- support ?chat=&message= deep-link navigation in chats page

- enforce 1s minimum voice message length

- lift scroll-to-bottom button to avoid overlap with composer action
2026-03-08 11:33:58 +03:00
68ba97bb90 fix(web): unify mic/send button and restore scroll-down
Some checks failed
CI / test (push) Failing after 20s
- show one action button in composer: mic when empty, send when text exists

- add floating scroll-to-bottom button in message list

- exclude non-text/media messages from Chat Info links list to avoid duplicates
2026-03-08 11:27:16 +03:00
99e7c70901 feat: realtime sync, settings UX and chat list improvements
Some checks failed
CI / test (push) Failing after 21s
- add chat_updated realtime event and dynamic chat subscriptions

- auto-join invite links in web app

- implement Telegram-like settings panel (general/notifications/privacy)

- add browser notification preferences and keyboard send mode

- improve chat list with last message preview/time and online badge

- rework chat members UI with context actions and role crowns
2026-03-08 10:59:44 +03:00
72c3b10ba5 feat(web): fullscreen media preview/viewer and fix media context menu
Some checks failed
CI / test (push) Failing after 26s
2026-03-08 10:38:46 +03:00
6a96a99775 feat(web): improve message UX, voice gestures, and attachments
Some checks failed
CI / test (push) Failing after 21s
2026-03-08 10:20:52 +03:00
52c41b6958 feat(web): send on Enter and newline on Shift+Enter
Some checks failed
CI / test (push) Failing after 25s
2026-03-08 09:59:29 +03:00
34edf2bae5 feat(web-media): improve upload/send reliability
Some checks failed
CI / test (push) Failing after 17s
- add retry logic for presigned media upload
- add retry for text send with idempotent client message id
- avoid dropping already sent media message when attachment metadata call fails
2026-03-08 02:20:24 +03:00
eddd4bda0b feat(web): per-chat message drafts
Some checks failed
CI / test (push) Failing after 17s
- store unsent draft text per chat in zustand
- restore draft when switching chats
- clear draft after successful send
2026-03-08 02:15:13 +03:00
b9f71b9528 feat: add saved messages, public chat discovery/join, and chat delete options
All checks were successful
CI / test (push) Successful in 19s
- add Saved Messages system chat with dedicated API

- add public group/channel metadata and discover/join endpoints

- add chat delete flow with for_all option and channel-wide delete

- switch message actions to context menu and improve reply/forward visuals

- improve microphone permission handling for voice recording
2026-03-08 00:41:35 +03:00
e1d0375392 feat: add reply/forward/pin message flow across backend and web
Some checks failed
CI / test (push) Failing after 24s
- add reply_to/forwarded_from message fields and chat pinned_message field

- add forward and pin APIs plus reply support in message create

- wire web actions: Reply, Fwd, Pin and reply composer state

- fix spam policy bug: allow repeated identical messages, keep rate limiting
2026-03-08 00:28:43 +03:00
0a602e4078 feat(web): redesign chat ui in telegram-like style
All checks were successful
CI / test (push) Successful in 21s
- update overall layout for desktop/mobile chat navigation

- restyle dialogs list, message bubbles and composer

- add atmospheric background and unified panel styling
2026-03-08 00:10:08 +03:00
16a584c6cb feat(web): add telegram-like message status indicators
All checks were successful
CI / test (push) Successful in 21s
- optimistic sending state with pending clock icon

- transition statuses sent -> delivered -> read via realtime events

- render checkmarks next to outgoing message timestamps
2026-03-08 00:01:22 +03:00
f6ad480973 feat: add message reliability foundation
All checks were successful
CI / test (push) Successful in 23s
- implement idempotent message creation via client_message_id

- add persistent delivered/read receipts

- expose /messages/status and wire websocket receipt events

- update web client to send client ids and auto-ack delivered/read
2026-03-07 23:57:35 +03:00
ff6f409c5a feat: improve media delivery and web upload pipeline
All checks were successful
CI / test (push) Successful in 26s
- make minio bucket downloadable for direct media links

- switch object keys to random uuid-based names

- add client-side image compression before upload
2026-03-07 23:49:14 +03:00
f95a0e9727 feat: improve chat realtime and media composer UX
All checks were successful
CI / test (push) Successful in 27s
- add media preview and upload confirmation for image/video

- add upload progress tracking for presigned uploads

- keep voice recording/upload flow with better UI states

- include related realtime/chat updates currently in working tree
2026-03-07 22:46:04 +03:00
2501466c7a Add web client and containerized deployment stack
All checks were successful
CI / test (push) Successful in 19s
Web client:

- Added React + TypeScript + Vite + Tailwind application in web/.

- Implemented auth, chat list, chat messages, typing indicators, file uploads, and voice recording/playback.

- Added typed API layer, Zustand stores, and realtime websocket hook integration.

Containerization:

- Added backend Dockerfile and project .dockerignore.

- Added web multi-stage Dockerfile with nginx static hosting and API/WS reverse proxy.

- Added full docker-compose stack with postgres, redis, minio, backend, worker, mailpit, and web.

- Added MinIO bucket bootstrap init job and updated README with Docker quick-start.
2026-03-07 21:55:50 +03:00