Repository navigation
Releases: FilippoLeone/datasetto
Release list
v0.1.17
Arcade: a simpler game menu
- One tap to play. Every game is a card that starts the setup you used last time, for example "Cash table · Regular bots".
- Short setup screens. Only Lamplight Hold'em and Fuseyard have an options button, because they're the only games with real choices. Setup shows the game modes as cards and one or two main choices. Everything else sits under "More options", which shows a summary of the current values.
- Solo play shows only solo settings. Settings that only matter online are hidden.
- Simpler voice channel panel. It shows your running game first, then "Play with your call" and "Play solo". The Start button stays visible above the phone's home bar.
- The Arcade has moved. It now has its own row in the channel list. The row shows how many games are running.
Arcade: leaving is immediate
- Leaving an online poker table pays out your chips right away, even in the middle of a hand, and the game closes at once.
- A table left with only bots closes immediately, and the channel list updates at once.
- The in-game button that minimises the game is now called "Game menu".
Fixed
- Bellwick: The Silent Bells. Holding or tapping J (or A on touch) no longer reopens the same conversation over and over. Shop questions now start on "No", and every question shows which answer is selected.
- Bellwick saves. Starting a new tale when all three save slots are full now asks which tale to replace instead of picking one for you.
- User panel. The panel at the bottom of the sidebar shows your full name again; the game icon that squeezed it is gone.
- Update notice. On desktop the notice sits in the sidebar with room for its text and buttons; on phones it appears at the top.
Server and self-hosting
- No migration in this release. Arcade tables close as soon as the last person leaves.
Desktop
Apps from v0.1.12 and later update themselves to this version on Windows and Linux. On macOS, and in the portable build, a notice with a download link appears instead.
v0.1.16
New: the Arcade
The old minigames are gone. In their place is the Arcade: open it from the sidebar, play alone against bots (it even works without a connection on the desktop and Android apps), or start a game in your voice channel and let friends join if they want to. Nobody is pulled into a game. Everything uses play chips that cannot be bought, sold or cashed out.
- Lamplight Hold'em: no-limit poker with cash tables, the Lamplight Cup sit-and-go tournaments and the Firefly Trio, a 3-player hyper-turbo with a prize multiplier drawn before the start. Cards are dealt on the server and only your own cards reach your device.
- Glimmerhall: three slot machines with free spins and a bonus game, a shared Glimmer Pot per channel, the Glimmer Dash timed tournament, and a hall feed where friends see each other's big wins. Each machine shows its exact return.
- Fuseyard: a grid bomb arena for up to 4 players or bots, with power-ups, several arenas and sudden death.
- Bellwick: The Silent Bells: a small top-down adventure with an overworld, a dungeon, keys, items and a boss. Play Solo Tale alone, or Party Tale together with up to 4 friends in your voice channel.
Games stay smooth on mobile data and never slow down chat or voice: action games use their own small connection that lowers its update rate when the link is weak, and the app costs almost nothing while a game is closed or hidden.
New
- Background blur for your webcam (Off, Light, Strong), done on your own device before the video is sent.
- Data-saver voice: on mobile data or a slow link, voice switches to a lighter bitrate automatically (Voice & audio settings > Data-saver voice: Auto, On, Off).
- Desktop title bar: the desktop app draws its own title bar in the app's colours, with the normal Windows buttons (Snap Layouts included).
- New logo and icons everywhere: app, taskbar, tray, installer, web app and Android.
Fixed
- Screen sharing with sound no longer sends Datasetto's own audio, so viewers stop hearing their own voices echoed back (Windows 11 and macOS 14.2 and later; elsewhere the app suggests headphones).
- A shared webcam comes back by itself after a connection drop, for everyone in the call.
- Chat messages, replies, direct messages and search show each person's own profile picture again, and update when it changes.
- The app no longer keeps the processor busy while idle, which made phones stutter.
- The screen-share picker no longer offers the voice overlay or the picker itself as a window to share.
- The voice popup shown when the app is minimized has no shadow.
Server and self-hosting
- Migration 14 runs on first start: it creates the Arcade's tables (play-chip wallets, stats, saves, preferences) and removes the old minigame leaderboard. Old minigame scores are not kept.
- Caddy now routes
/arcade/ws, the Arcade's connection for action games; the web image includes it. - Request bodies are never decompressed, and the images refuse to build on Node older than 24.22.1 (CVE-2026-111497).
- The VPS installer now hardens the host on every run: SSH by key only, root login off, fail2ban, automatic security updates including Docker's, automatic reboot at 04:30 when an update needs one, Docker log rotation, and kernel settings. Optional settings in
ops/.env:DATASETTO_KEEP_SSH_PASSWORDS=yeskeeps password logins,DATASETTO_AUTO_REBOOT=noturns the automatic reboot off,DATASETTO_REBOOT_TIMEmoves it. - Admins get a new Admin > Arcade section to switch games on and off and set limits.
Desktop
Apps from v0.1.12 and later update to this version by themselves on Windows and Linux; macOS and the portable build show a notice with a download link. Windows may keep showing the old icon on pinned shortcuts until its icon cache refreshes.
v0.1.15
New
- Clips: while watching a stream or a shared screen, press Clip (or Alt+C) to save the last 15, 30 or 60 seconds on your own device. Clips land in a library with play, download and delete; the person sharing can switch clipping off for their share. Clips are WebM files; nothing is recorded on the server.
- Post a clip to chat: from the clips library, send a clip into a text channel, a live stream's chat or a direct message. It plays in the channel like a picture would show, with its name, size and length; only the header is fetched until someone presses play.
- iPhone and iPad: Datasetto now works properly in Safari and as a Home Screen web app: the keyboard no longer pushes the header away, links open in Safari from the installed app, voice starts reliably from the Join tap, streams use the native player, and the app says plainly what iOS does not allow (a call pauses when the app leaves the screen; notifications need the Home Screen app on iOS 16.4 or later). The downloads page has an iPhone card with the install steps.
Fixed
- Saving your profile works again after uploading a picture. The uploaded picture no longer lands in the Avatar URL field, and saving other profile details no longer drops it.
- The public downloads page rendered its whole content twice.
- Per-person volume on Safari and Firefox stops at 100 % with a note instead of a slider that did nothing above it.
Server
- No migrations. One new optional setting:
UPLOAD_VIDEO_MAX_MB(default 50) caps the size of a posted clip, separate from the picture cap. The only other server change is the sharer's clipping opt-out flag.
Desktop
Apps from v0.1.12 and later update to this version by themselves on Windows and Linux; macOS and the portable build show a notice with a download link.
v0.1.14
New
- Strong noise suppression: Voice & audio settings > Noise suppression now has three levels. Standard is what you had. Strong runs a neural noise suppressor (DeepFilterNet3, with RNNoise as the lighter fallback) on your microphone inside the app and removes keyboard typing, chewing and other non-speech sounds before your voice is sent. A Strength slider sets how much it may remove while you talk, and a mic test records 5 seconds so you can hear the result as sent and raw. Everything runs on your device; nothing is sent to a server. Phones start on the lighter engine and only move up when they have the headroom.
- Per-person volume: click a friend in the member list, under a voice channel, on their voice card or camera tile (a bottom sheet on phones) to set how loud they play for you, 0 to 200 %, or mute them for yourself only. Remembered per account across reloads and rejoins. Nothing is sent to the server.
- Edit and delete messages: edit your own messages in place (arrow up in the empty composer edits your newest one), delete your own; admins can delete anyone's. Deleted messages stay as a "Message deleted" placeholder.
- Replies: reply to a message and the quoted original appears above yours; clicking the quote jumps to it.
- @mentions: type
@to pick someone who can read the channel. Mentions are highlighted, a mention of you marks the channel in the sidebar, and Settings > Notifications gains "@mentions" and "Direct messages" switches that also apply to push notifications. - Formatting:
**bold**,*italic*,`code`, fenced code blocks,||spoilers||and links. Text is never rendered as HTML.
Fixed
- Desktop: the voice overlay and your own speaking ring kept up when the app was minimized or behind a game.
- Menus in voice tiles and scrolling lists are no longer clipped.
- Saving unrelated audio settings no longer restarts the microphone.
Server
- Migration 13 runs on first start: reply references, mentions, two notification columns on push subscriptions. No new settings or environment variables.
- Deleted messages are now served in history as placeholders instead of being left out.
Desktop
Apps from v0.1.12 and later update to this version by themselves on Windows and Linux; macOS and the portable build show a notice with a download link.
v0.1.13
New
- Close a direct message: the × on a conversation in the sidebar (or "Close conversation" in its menu) hides it for you. It comes back on its own when the other person writes again, or when you open it yourself. Nothing is deleted.
- Desktop overlay: the small always-on-top panel now shows "Voice on" and "Live" in normal voice mode too, not only the hold-to-talk state.
Fixed
- The web app no longer offers an update when the server runs a build made after the latest release.
- Menus in the member list and the channel list open with the keyboard (Enter or Space) and name their entries for screen readers and automation.
Server
- Caddy sends a strict-transport-security header on HTTPS responses, so browsers keep using HTTPS for the site.
- Migration 12 (closed direct messages) runs on first start. No new settings.
Desktop
Apps from v0.1.12 update to this version by themselves on Windows and Linux; macOS and the portable build show a notice with a download link.
v0.1.12
Install this one by hand
This is the first release with automatic updates. Apps from v0.1.11 or older cannot update themselves, so download this version once from the Downloads section; from now on the Windows installer and the Linux builds update in the background and ask you to restart. macOS and the portable Windows build show a notice with a download link.
New
- Pictures in chat: paste, drop or pick pictures (camera or gallery on phones); they show in a grid with a lightbox. The first link in a message gets a preview card; admins can switch previews off per channel.
- "Playing " in the member list and on voice tiles, from the desktop app only and off by default. It reads the names of running programs with the operating system's own tool and sends nothing but the matched game title. No game hooks, no injection.
- Phones: bottom sheets instead of pop-ups, long press on a message for reactions and more, swipe to open and close the drawers, the back button closes panels before leaving the app, a toolbar that makes room for the keyboard, a landscape call layout, larger touch targets, an install hint, and a voice notification with a Leave button on Android.
- Staying connected: a deploy or a flaky link no longer interrupts you. A thin banner shows the reconnect state, messages typed meanwhile are queued and sent when you are back, voice calls and screenshare rooms keep going through a socket loss, and live streams resume.
- Automatic updates (see above) and update notices on the web and Android.
Fixed
- On Android the voice notification never appeared and audio routes never loaded; both work now.
- The Windows installer published on the release page was actually the portable build (same file name). The portable build now has its own name.
- The web container no longer reports "unhealthy" in Docker.
Server
- Graceful restarts: clients are told to expect a short wait, sockets close cleanly, SQLite is checkpointed.
/api/healthreports the database and the stream watchdog.ops/vps/restore.shrestores a backup with checks. - The VPS installer re-runs itself after updating its own file, so the first run after a change applies the new steps.
- Migration 11 (pictures and link previews) runs on first start. New settings:
UPLOAD_MAX_MB,LINK_PREVIEWS,RESTART_EXPECTED_WAIT_SECONDS.
v0.1.11
New
- Search across your channels and direct messages: Ctrl+K (Cmd+K on a Mac) or the search box in the header. Results show who said it and when, with the matching words highlighted; opening one jumps to the message.
- Push notifications for direct messages and @mentions while the app is not in front of you, in Chrome, Edge and Firefox, and on Android through the browser. Switch them on per browser in Settings > Notifications.
- Desktop push to talk that works while a game has focus: record a key combination in Settings; the desktop app registers it with the operating system while you are in voice. No game hooks or injection.
- Desktop voice overlay: a small always-on-top, click-through panel in a corner showing who is in the channel and who is speaking, plus your mute, deafen or hold-to-talk state. Exclusive-fullscreen games cover it; borderless and windowed modes show it.
Fixed
- The desktop app now plays the voices of other people. Remote audio went through a path that Chromium feeds with silence, so desktop users heard nobody and saw no speaking rings. Please update.
- The web container's health status in Docker no longer shows "unhealthy" on HTTPS deployments.
Server
STREAM_MAX_VIEWERS,STREAM_MAX_BITRATE_KBPSandSTREAM_MONTHLY_EGRESS_GBaccept0for "no limit"; the TURN relay caps are configurable (TURN_MAX_BPS,TURN_BPS_CAPACITY,0for none) and their documented figures are corrected (coturn counts bytes per second).- Web Push needs
PUSH_VAPID_PUBLIC_KEY,PUSH_VAPID_PRIVATE_KEYandPUSH_VAPID_SUBJECT; the VPS installer generates them when absent. - Database migrations 9 (search index) and 10 (push subscriptions) run on first start.
v0.1.10
New
- Private channels with a topic, hidden from non-members; admins add members or friends join with the channel's password.
- Invite links made in the admin panel (uses, expiry, note), next to the server's invite code.
- Reactions on messages, with counts and who reacted.
- Direct messages from a member's menu; only the two of you can read them.
- Profile pictures: upload, crop and save a picture from the profile dialog.
- Permissions: a role matrix per channel with member overrides, and templates for new channels.
- User management and a full admin panel at
/app/admin: members, roles, temporary passwords, sessions, invites, channel defaults, bans and streaming usage. - One active login per account: signing in on another device signs the previous one out (can be switched off with
SINGLE_SESSION_PER_ACCOUNT=false). - Screen share quality: 1080p at 60 fps is the default, with native-resolution 60 fps and 120 fps presets; tiles show the effective resolution and frame rate.
- Voice at 128 kbps by default.
Fixed
- The camera no longer reports "in use by another application" for every failure; the message now says what is wrong (permission, no camera, a virtual camera that is not running).
- Narrow video tiles no longer paint the volume controls over the name; the voice grid fits the space with 16:9 tiles.
Desktop
- A new screen share picker in the app's style: screens and windows with live previews, a system audio switch, keyboard control, and a quality hint from your settings.
- Short animations across the app, switched off when the system asks for reduced motion.
- Electron 44. Installers require Windows 10 or newer (x64), macOS 13 or newer, or a glibc Linux (x64).
Android
- Capacitor 8, targeting Android 16 (SDK 36). Android 7.0 or newer is required.
Under the hood
- Vite 8, Vitest 5, TypeScript 6, zod 4, Preact 11, Node 24 images and nginx 1.30 for the stream ingest; repository cleaned of pre-rewrite scripts; guides updated.
v0.1.9
Installers now carry the release version in their file names. Landing page with a Downloads section listing the latest release. Same application as v0.1.8 otherwise (microphone capture fixed on Firefox, phone layout, screen share with audio, RTMPS, abuse protection).
v0.1.8
Production rewrite: new server, Preact client with phone layout, screen share with audio, abuse protection with viewer tickets and traffic caps, RTMPS ingest, VPS deployment scripts, updated desktop and Android shells. Microphone capture fixed on Firefox. Installers are attached by the release workflow.