myxelium
180333dc35
feat: Add user metadata changing display name and description with sync
Queue Release Build / prepare (push) Successful in 27s
Deploy Web Apps / deploy (push) Failing after 4m58s
Queue Release Build / build-linux (push) Failing after 10m55s
Queue Release Build / build-windows (push) Successful in 16m14s
Queue Release Build / finalize (push) Has been skipped
2026-04-17 22:04:18 +02:00
myxelium
3ba8a2c9eb
fix: Fix corrupt database, Add soundcloud and spotify embeds
2026-04-17 19:44:26 +02:00
myxelium
28797a0141
perf: use lookup for chats
Queue Release Build / prepare (push) Successful in 16s
Deploy Web Apps / deploy (push) Successful in 15m8s
Queue Release Build / build-linux (push) Successful in 26m49s
Queue Release Build / build-windows (push) Failing after 12m6s
Queue Release Build / finalize (push) Has been skipped
2026-04-17 03:53:53 +02:00
myxelium
17738ec484
feat: Add profile images
2026-04-17 03:06:44 +02:00
myxelium
35b616fb77
refactor: Clean lint errors and organise files
2026-04-17 01:06:01 +02:00
myxelium
2927a86fbb
feat: Add user statuses and cards
2026-04-16 22:52:45 +02:00
myxelium
b4ac0cdc92
fix: Windows audio mute fix
2026-04-16 19:07:44 +02:00
myxelium
f3b56fb1cc
fix: Db corruption fix
Queue Release Build / prepare (push) Successful in 17s
Deploy Web Apps / deploy (push) Successful in 10m0s
Queue Release Build / build-linux (push) Successful in 25m59s
Queue Release Build / build-windows (push) Successful in 21m44s
Queue Release Build / finalize (push) Successful in 18s
2026-04-13 02:23:09 +02:00
myxelium
315820d487
ci: attempt to fix
Queue Release Build / prepare (push) Successful in 16s
Deploy Web Apps / deploy (push) Successful in 11m21s
Queue Release Build / build-linux (push) Successful in 25m31s
Queue Release Build / build-windows (push) Successful in 21m42s
Queue Release Build / finalize (push) Successful in 22s
2026-04-12 22:05:39 +02:00
myxelium
878fd1c766
ci: Attempt to speed up build
Queue Release Build / prepare (push) Successful in 50s
Queue Release Build / build-windows (push) Failing after 11m49s
Queue Release Build / build-linux (push) Successful in 34m1s
Queue Release Build / finalize (push) Has been skipped
Deploy Web Apps / deploy (push) Failing after 7m46s
2026-04-12 03:19:51 +02:00
myxelium
391d9235f1
test: Add playwright main usage test
Deploy Web Apps / deploy (push) Has been cancelled
Queue Release Build / prepare (push) Successful in 21s
Queue Release Build / build-windows (push) Successful in 32m16s
Queue Release Build / finalize (push) Successful in 1m54s
Queue Release Build / build-linux (push) Successful in 27m44s
2026-04-12 03:02:29 +02:00
myxelium
f33440a827
test: Initate instructions
2026-04-11 15:38:16 +02:00
myxelium
52912327ae
refactor: stricter domain: voice-session
2026-04-11 15:12:54 +02:00
myxelium
7a0664b3c4
refactor: stricter domain: voice-connection
2026-04-11 15:08:04 +02:00
myxelium
cea3dccef1
refactor: stricter domain: theme
2026-04-11 15:01:39 +02:00
myxelium
c8bb82feb5
refactor: stricter domain: server-directory
2026-04-11 14:50:38 +02:00
myxelium
3fb5515c3a
refactor: stricter domain: screen-share
2026-04-11 14:42:12 +02:00
myxelium
a6bdac1a25
refactor: true facades
2026-04-11 14:35:02 +02:00
myxelium
db7e683504
refactor: stricer domain: notifications
2026-04-11 14:23:50 +02:00
myxelium
98ed8eeb68
refactor: stricter domain: chat
2026-04-11 14:01:19 +02:00
myxelium
39b85e2e3a
refactor: stricter domain: auth
2026-04-11 13:52:59 +02:00
myxelium
58e338246f
refactor: stricter domain: attachments
2026-04-11 13:39:27 +02:00
myxelium
0b9a9f311e
refactor: stricter domain: access-control
2026-04-11 13:31:25 +02:00
myxelium
6800c73292
refactor: Cleaning rooms store
2026-04-11 13:07:46 +02:00
myxelium
ef1182d46f
fix: Broken voice states and connectivity drops
2026-04-11 12:32:22 +02:00
myxelium
0865c2fe33
feat: Basic general context menu
Queue Release Build / prepare (push) Successful in 14s
Deploy Web Apps / deploy (push) Successful in 14m39s
Queue Release Build / build-linux (push) Successful in 40m59s
Queue Release Build / build-windows (push) Successful in 28m59s
Queue Release Build / finalize (push) Successful in 1m58s
2026-04-04 05:38:05 +02:00
myxelium
4a41de79d6
fix: debugger lagging from too many logs
2026-04-04 04:55:13 +02:00
myxelium
84fa45985a
feat: Add chat embeds v1
...
Youtube and Website metadata embeds
2026-04-04 04:47:04 +02:00
myxelium
35352923a5
feat: Youtube embed support
2026-04-04 03:30:21 +02:00
myxelium
b9df9c92f2
fix: links not getting recognised in chat
2026-04-04 03:14:25 +02:00
myxelium
8674579b19
fix: leave and reconnect sound randomly playing, also fix leave sound when muting
2026-04-04 03:09:44 +02:00
myxelium
de2d3300d4
fix: Fix users unable to see or hear each other in voice channels due to
...
stale server sockets, passive non-initiators, and race conditions
during peer connection setup.
Fix users unable to see or hear each other in voice channels due to
stale server sockets, passive non-initiators, and race conditions
during peer connection setup.
Server:
- Close stale WebSocket connections sharing the same oderId in
handleIdentify instead of letting them linger up to 45s
- Make user_joined/user_left broadcasts identity-aware so duplicate
sockets don't produce phantom join/leave events
- Include serverIds in user_left payload for multi-room presence
- Simplify findUserByOderId now that stale sockets are cleaned up
Client - signaling:
- Add fallback offer system with 1s timer for missed user_joined races
- Add non-initiator takeover after 5s when the initiator fails to send
an offer (NON_INITIATOR_GIVE_UP_MS)
- Scope peerServerMap per signaling URL to prevent cross-server
collisions
- Add socket identity guards on all signaling event handlers
- Replace canReusePeerConnection with hasActivePeerConnection and
isPeerConnectionNegotiating with extended grace periods
Client - peer connections:
- Extract replaceUnusablePeer helper to deduplicate stale peer
replacement in offer and ICE handlers
- Add stale connectionstatechange guard to ignore events from replaced
RTCPeerConnection instances
- Use deterministic initiator election in peer recovery reconnects
- Track createdAt on PeerData for staleness detection
Client - presence:
- Add multi-room presence tracking via presenceServerIds on User
- Replace clearUsers + individual userJoined with syncServerPresence
for atomic server roster updates
- Make userLeft handle partial server removal instead of full eviction
Documentation:
- Add server-side connection hygiene, non-initiator takeover, and stale
peer replacement sections to the realtime README
2026-04-04 02:47:58 +02:00
myxelium
ae0ee8fac7
Fix lint, make design more consistent, add license texts,
Queue Release Build / prepare (push) Successful in 11s
Deploy Web Apps / deploy (push) Successful in 14m0s
Queue Release Build / build-linux (push) Successful in 35m41s
Queue Release Build / build-windows (push) Successful in 28m53s
Queue Release Build / finalize (push) Successful in 2m6s
2026-04-02 04:08:53 +02:00
myxelium
37cac95b38
Add access control rework
2026-04-02 03:18:37 +02:00
myxelium
314a26325f
Database changes to make it better practise
2026-04-02 01:32:08 +02:00
myxelium
5d7e045764
feat: Add chat seperator and restore last viewed chat on restart
2026-04-02 00:47:44 +02:00
myxelium
bbb6deb0a2
feat: Theme engine
...
big changes
2026-04-02 00:08:38 +02:00
myxelium
65b9419869
Rework design part 1
2026-04-01 19:31:00 +02:00
myxelium
fed270d28d
Fix issues with server navigation
2026-04-01 18:18:31 +02:00
myxelium
8b6578da3c
fix: Notification audio
Queue Release Build / prepare (push) Successful in 16s
Deploy Web Apps / deploy (push) Successful in 11m55s
Queue Release Build / build-linux (push) Successful in 30m56s
Queue Release Build / build-windows (push) Successful in 27m50s
Queue Release Build / finalize (push) Successful in 2m0s
2026-03-30 21:14:26 +02:00
myxelium
851d6ae759
fix: Prefer cached channels before loaded
2026-03-30 20:37:24 +02:00
myxelium
64e34ad586
feat: basic selected server indicator
2026-03-30 04:54:02 +02:00
myxelium
e3b23247a9
feat: Close to tray
2026-03-30 04:48:34 +02:00
myxelium
42ac712571
feat: Add notifications
2026-03-30 04:41:58 +02:00
myxelium
b7d4bf20e3
feat: Add webcam basic support
2026-03-30 03:10:44 +02:00
myxelium
727059fb52
Add seperation of voice channels, creation of new ones, and move around users
2026-03-30 02:11:39 +02:00
myxelium
83694570e3
feat: Allow admin to create new text channels
2026-03-30 01:25:56 +02:00
myxelium
109402cdd6
perf: Health snapshot changes
2026-03-30 00:28:45 +02:00
myxelium
eb23fd71ec
perf: Optimizing the image loading
...
Does no longer load all klipy images through image proxy from signal server. Improves loading performance.
2026-03-30 00:26:28 +02:00
myxelium
11917f3412
fix: Make attachments unique when downloaded
...
Fixes the issue with attachments replacing each other locally so files with same filename appears as the same file
2026-03-30 00:08:53 +02:00
myxelium
8162e0444a
Move toju-app into own its folder
2026-03-29 23:55:24 +02:00
myxelium
0467a7b612
documentation improvement
2026-03-23 01:34:18 +01:00
myxelium
971a5afb8b
ddd test 2
2026-03-23 00:42:08 +01:00
myxelium
fe9c1dd1c0
ddd test
2026-03-20 03:05:29 +01:00
myxelium
429bb9d8ff
Chat message placeholder adjustment
2026-03-19 21:39:47 +01:00
myxelium
b5d676fb78
New attempt to fix windows screenshare
2026-03-19 21:39:20 +01:00
myxelium
aa595c45d8
Fix autostart on linux
2026-03-19 21:38:47 +01:00
myxelium
1c7e535057
Possibly screensharing fix for windows where they get deafened when screensharing with audio
Queue Release Build / prepare (push) Successful in 14s
Deploy Web Apps / deploy (push) Successful in 9m24s
Queue Release Build / build-linux (push) Successful in 24m57s
Queue Release Build / build-windows (push) Successful in 25m21s
Queue Release Build / finalize (push) Successful in 1m43s
2026-03-19 04:15:59 +01:00
myxelium
8f960be1e9
Resync username instead of using Anonymous
2026-03-19 03:57:51 +01:00
myxelium
9a173792a4
Fix users list to only show server users
2026-03-19 03:48:41 +01:00
myxelium
cb2c0495b9
hotfix handshake issue
Queue Release Build / prepare (push) Successful in 16s
Deploy Web Apps / deploy (push) Successful in 10m15s
Queue Release Build / build-linux (push) Successful in 26m14s
Queue Release Build / build-windows (push) Successful in 25m41s
Queue Release Build / finalize (push) Successful in 1m51s
2026-03-19 03:34:26 +01:00
myxelium
c3ef8e8800
Allow multiple signal servers (might need rollback)
Queue Release Build / prepare (push) Successful in 17s
Deploy Web Apps / deploy (push) Successful in 9m58s
Queue Release Build / build-linux (push) Successful in 26m26s
Queue Release Build / build-windows (push) Successful in 25m3s
Queue Release Build / finalize (push) Successful in 1m43s
2026-03-19 02:11:15 +01:00
myxelium
c862c2fe03
Auto start with system
Queue Release Build / prepare (push) Has been cancelled
Queue Release Build / build-linux (push) Has been cancelled
Queue Release Build / build-windows (push) Has been cancelled
Queue Release Build / finalize (push) Has been cancelled
Deploy Web Apps / deploy (push) Successful in 6m2s
2026-03-18 23:46:16 +01:00
myxelium
4faa62864d
Fix syncing issues
Queue Release Build / prepare (push) Has been cancelled
Queue Release Build / build-linux (push) Has been cancelled
Deploy Web Apps / deploy (push) Has been cancelled
Queue Release Build / build-windows (push) Has been cancelled
Queue Release Build / finalize (push) Has been cancelled
2026-03-18 23:11:48 +01:00
myxelium
1cdd1c5d2b
fix typing indicator on wrong server
Queue Release Build / build-linux (push) Blocked by required conditions
Queue Release Build / prepare (push) Successful in 15s
Queue Release Build / finalize (push) Has been cancelled
Queue Release Build / build-windows (push) Has been cancelled
Deploy Web Apps / deploy (push) Successful in 16m15s
2026-03-18 22:10:11 +01:00
myxelium
141de64767
Reconnection when signal server is not active and minor changes
2026-03-18 20:45:31 +01:00
myxelium
eb987ac672
Private servers with password and invite links (Experimental)
2026-03-18 20:42:40 +01:00
myxelium
f8fd78d21a
Add server variables
Queue Release Build / prepare (push) Successful in 21s
Deploy Web Apps / deploy (push) Successful in 15m14s
Queue Release Build / build-linux (push) Successful in 22m12s
Queue Release Build / build-windows (push) Successful in 23m20s
Queue Release Build / finalize (push) Successful in 2m12s
2026-03-15 16:12:21 +01:00
myxelium
150c45c31a
Use wayland if possible on linux
Queue Release Build / prepare (push) Successful in 58s
Deploy Web Apps / deploy (push) Successful in 22m58s
Queue Release Build / build-windows (push) Successful in 32m8s
Queue Release Build / finalize (push) Successful in 3m11s
Queue Release Build / build-linux (push) Successful in 1h10m11s
2026-03-13 20:14:19 +01:00
myxelium
00adf39121
Add translation support for website
Queue Release Build / prepare (push) Successful in 1m20s
Deploy Web Apps / deploy (push) Successful in 17m37s
Queue Release Build / build-windows (push) Successful in 39m8s
Queue Release Build / build-linux (push) Successful in 1h3m53s
Queue Release Build / finalize (push) Successful in 5m43s
2026-03-13 03:45:29 +01:00
myxelium
2b6e477c9a
[Attempt 1] fix slow website
Queue Release Build / prepare (push) Successful in 25s
Queue Release Build / finalize (push) Has been cancelled
Queue Release Build / build-linux (push) Has started running
Queue Release Build / build-windows (push) Has been cancelled
Deploy Web Apps / deploy (push) Successful in 17m20s
2026-03-13 02:46:21 +01:00
myxelium
22d355a522
[Experimental Screenshare audio fix] Seperate logic to own files (minor change can possibly revert)
2026-03-13 02:26:55 +01:00
myxelium
15c5952e29
Improved logger
2026-03-13 00:48:33 +01:00
myxelium
781c05294f
feat!: [Experimental hotfix 2] Fix Audio stream handling on windows electron
...
Experimental fix for solving replacement of mic audio when enabling screenshare audio on windows electron
On Windows Electron, startWithElectronDesktopCapturer uses getUserMedia({ chromeMediaSource: 'desktop' }) for both video and audio. This getUserMedia desktop audio call can interfere with / replace the existing mic getUserMedia stream, killing voice audio.
BREAKING CHANGE: possibly streaming
2026-03-12 23:55:38 +01:00
myxelium
778e75bef5
fix: [Experimental hotfix 1] Fix Signaling issues Toju App
...
1. Server: WebSocket ping/pong heartbeat (index.ts)
Added a 30-second ping interval that pings all connected clients
Connections without a pong response for 45 seconds are terminated and cleaned up
Extracted removeDeadConnection() to deduplicate the cleanup logic between close events and dead connection reaping
2. Server: Fixed sendServerUsers filter bug (handler.ts:13)
Removed && cu.displayName from the filter — users who joined a server before their identify message was processed were silently invisible to everyone. This was the direct cause of "can't see each other" in session 2.
3. Client: Typing message now includes serverId
Added serverId: this.webrtc.currentServerId to the typing payload
Added a currentServerId getter on WebRTCService
2026-03-12 23:53:10 +01:00
myxelium
7bf37ba510
Website v3
Queue Release Build / prepare (push) Successful in 39s
Deploy Web Apps / deploy (push) Successful in 16m30s
Queue Release Build / build-linux (push) Successful in 52m31s
Queue Release Build / build-windows (push) Successful in 36m48s
Queue Release Build / finalize (push) Successful in 3m20s
2026-03-12 14:32:48 +01:00
myxelium
3c04b5db26
Add webapp release
Queue Release Build / prepare (push) Successful in 50s
Queue Release Build / build-windows (push) Has been cancelled
Queue Release Build / finalize (push) Has been cancelled
Queue Release Build / build-linux (push) Has been cancelled
Deploy Web Apps / deploy (push) Has been cancelled
2026-03-12 13:37:46 +01:00
myxelium
45e0b09af8
Toju Website V2
2026-03-12 13:21:33 +01:00
myxelium
106212ef3d
feat: Add website v1
...
Queue Release Build / prepare (push) Successful in 13s
Queue Release Build / build-windows (push) Successful in 36m11s
Queue Release Build / build-linux (push) Successful in 41m21s
Queue Release Build / finalize (push) Successful in 3m44s
Not final:
Needs more file icons
clean up some text
2026-03-12 01:33:45 +01:00
myxelium
be465fd297
Fix screenshare portals linux
Queue Release Build / prepare (push) Successful in 14s
Queue Release Build / build-windows (push) Successful in 34m25s
Queue Release Build / build-linux (push) Successful in 40m26s
Queue Release Build / finalize (push) Successful in 3m44s
2026-03-11 17:54:04 +01:00
myxelium
7b3caa0b61
Fix electron windows screen and window picker for screensharing
Queue Release Build / prepare (push) Successful in 44s
Queue Release Build / build-windows (push) Successful in 32m25s
Queue Release Build / build-linux (push) Successful in 42m57s
Queue Release Build / finalize (push) Successful in 3m41s
2026-03-11 14:40:53 +01:00
myxelium
22f583e6b3
Add missing environments file swap
Queue Release Build / prepare (push) Successful in 32s
Queue Release Build / build-windows (push) Successful in 30m21s
Queue Release Build / build-linux (push) Successful in 40m47s
Queue Release Build / finalize (push) Successful in 4m8s
2026-03-11 11:38:34 +01:00
myxelium
091c7b2601
Updates server url
Queue Release Build / prepare (push) Successful in 31s
Queue Release Build / build-windows (push) Successful in 34m34s
Queue Release Build / build-linux (push) Successful in 42m26s
Queue Release Build / finalize (push) Successful in 3m38s
2026-03-11 10:49:18 +01:00
myxelium
bb087cd2d8
Reset to parent
Queue Release Build / prepare (push) Successful in 19s
Queue Release Build / build-windows (push) Successful in 24m35s
Queue Release Build / build-linux (push) Successful in 39m23s
Queue Release Build / finalize (push) Successful in 4m9s
2026-03-11 02:22:42 +01:00
myxelium
c673771035
Fix ng build issues on agent
Queue Release Build / release (push) Failing after 14s
2026-03-11 00:31:38 +01:00
myxelium
f5bf18b739
Add runner ci (test)
2026-03-10 23:56:53 +01:00
myxelium
c3fbd7d4fe
Add auto updater
2026-03-10 23:38:57 +01:00
myxelium
e8e5c24600
Add file upload from clipboard
2026-03-10 00:44:00 +01:00
myxelium
ca74836c52
Clean up stream audio on ending stream
2026-03-09 23:59:59 +01:00
myxelium
dc6746c882
Disallow any types
2026-03-09 23:02:52 +01:00
myxelium
3b1aab4985
Messages now actually gets deleted
2026-03-09 22:12:08 +01:00
myxelium
a55694af8e
Update hamburger menu
2026-03-09 22:11:27 +01:00
myxelium
f95d375556
Clean unused environment variables
2026-03-09 21:18:15 +01:00
myxelium
47473f4295
Improve screenshare performance
2026-03-09 21:12:06 +01:00
myxelium
7a4c4ede8c
Screensharing rework
...
Split Linux screensharing audio tracks, Rework screensharing functionality and layout
This will need some refactoring soon
2026-03-08 06:33:27 +01:00
myxelium
d20509566d
Change klippy window behavour, Fix user management behavour, clean up search server page
2026-03-08 00:00:17 +01:00
myxelium
90f067e662
Add debugging console
2026-03-07 21:59:39 +01:00
myxelium
66246e4e16
Split chat component into smaller components
2026-03-07 18:06:45 +01:00
myxelium
901df84d13
Basic language highlighting
2026-03-07 17:25:30 +01:00
myxelium
5013db5e16
Split connection manager into multiple files
2026-03-07 17:03:08 +01:00