Skip to content

Vector v0.5.0-3 - Vigil

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Nov 02:35
960f14d
Vigilant & Virtuous

Vector Logo

Vector v0.5.0 - Vigil, our flagship release. Three months of work: a widescreen desktop layout, redesigned mobile experience, voice and video calls, voice channels, Vector Web for the browser, Roles and Channels for Communities, Tor and I2P routing, encrypted media storage, and a deeply optimised app that is far lighter on memory and battery.

Since Preview 2:

  • 📌 Pins, Rearranged: drag your pinned chats into any order, and with the Community rail hidden, Communities can be pinned in your chat list too.
  • 📤 Community Files on Android: MP3s, Mini Apps, PDFs and anything else that isn't a picture send to Community channels again, instead of failing with "No such file or directory".
  • ▶️ Play What You Just Sent: a file you just sent on Android plays in its bubble straight away, without waiting for a restart.
  • 💾 Save, Fixed: on Android a saved file no longer shows up as 0 bytes in your file manager, a file without a name of its own saves with its type on the end (.jpg, .xdc), and on an iPhone, Vector Web saves pictures you can actually open.
  • 🔗 Settings Links on Phones: a link to a Settings page closes the chat you're in first, instead of drawing Settings over it.
  • 🐧 Linux Black Window: fixed on Raspberry Pi OS Trixie and other distros with the newest WebKitGTK (2.54).

Upgrading from v0.4.x:

  • 🧳 Concord v1 is gone: Communities that were never migrated to Concord v2 are deleted when you upgrade, along with their history, and old v1 invite links no longer work. If your Communities already moved to v2, nothing changes for you, if you own a community still on Concord v1: please migrate it before upgrading.
  • 🔀 Mixed versions in Communities: members still on v0.4.x can keep chatting in Communities that switch to the new roles, but won't see announcement channels, roles, or newer private channels until they update.
  • 📁 Your downloads become encrypted: after the update, files Vector downloaded for you are moved into its encrypted storage in the background. They still open in Vector exactly as before. Want a normal copy of something? Press Save, or turn on Keep Unencrypted (shown in Advanced Mode) under Settings > Storage.

New:

  • 🖥️ Widescreen: give Vector a desktop-sized window and it spreads out: your Communities on a rail, a Discord-style channel list or your DMs beside it, the conversation in the middle, and the member list docked on the right. Drag Communities into any order, or drop one onto another to make a folder, then name it and colour it; your arrangement syncs to your other devices.
  • 🪟 Start Menu: click your account at the foot of the rail and a Start Menu grows out of it: every place in the app down the side, a grid of pinned Mini Apps, chats, Communities, channels and Settings pages you can drag into folders, and one search over all of it (paste an npub to find someone). Pins sync across devices, and Settings > Appearance puts the classic rail tabs back if you prefer them.
  • 📱 Slim Layout: phones and narrow windows get a redesign of their own: a header with your account switcher, search and scanner, a Community rail that slides out from the edge, and filter tabs for Messages, Communities and Requests. Communities open Discord-style with their channel list beside you, a swipe pulls it back over, and chats slide in and out the way they should.
  • 📞 Voice & Video Calls: call anyone from their DM. Full-band audio with echo cancellation, noise suppression and automatic gain, your camera, and on desktop your screen, with its sound, at up to 60 fps for games. Calls go through a relay by default so the other side never learns your IP (Direct Connection under Settings > Audio > Calls connects you straight to them instead). Phones ring even while Vector is closed, and on Android a call behaves like a phone call: earpiece, speaker or Bluetooth, and the screen goes dark at your ear.
  • 🎙️ Voice Channels: Communities can have voice channels now. Join from the sidebar, see who's in and who's talking, share your screen or camera with whoever's watching, and set each person's volume anywhere up to 200%. Moderators can mute, deafen, move and disconnect, Priority Speaker cuts through the room, and Cmd/Ctrl+Shift+M and Cmd/Ctrl+Shift+D mute and deafen from anywhere. A Community can bring its own voice relays too.
  • 🌐 Vector Web: Vector in your browser at web.vectorapp.io, or over Tor at http://vector4oy2vvhlps3w2jtx6htulyo4dv3fxnx3rwpujdig6mgypfd5ad.onion. It's the same app with the same encryption, running on your own device: DMs, Communities, calls and voice channels, Mini Apps, even voice message transcription on your own GPU. Add it to your iPhone's Home Screen for notifications and an unread badge; it runs in Tor Browser, Mullvad and private windows too.
  • 🔔 Notify When Closed: Android and Vector Web can now be woken by a notification while Vector is closed. Your contact's Vector writes the notification and encrypts it for your device alone, and the pusher that delivers it can't read it, or tell who it's from or who it's for. Muted, blocked and on-screen chats don't ring. It covers DMs and calls from people on v0.5.0; messages from other Nostr apps still arrive when you next open Vector. Android uses UnifiedPush, or Google's FCM through a built-in distributor (F-Droid builds carry nothing of Google's), and Run in Background is now opt-in for new installs.
  • 💬 Channels & Categories: a Community can hold as many text and voice channels as it needs, grouped into Categories you drag around. Channels get topics, private channels open only to the roles and members you pick (even their names stay sealed), a public channel can go private, and # mentions a channel with suggestions as you type.
  • 🛡️ Roles & Permissions: create, colour, reorder and assign roles, decide what @everyone can do, and override any of it per channel or per Category: who can see it, post, attach files, react, read old history, join calls or share video. Mentionable roles ping their holders, and Timeouts quiet someone for up to 28 days. New Communities start on the new roles; owners of existing ones get a Switch under Community Settings > Roles.
  • ⚙️ Community Settings: one place to run a Community: icon, name, banner and description, Hosting Relays (including moving a whole Community onto new relays, each one checked before anybody's told to go), Voice Relays, Roles, and Bans, with a whole selection unbanned in one go.
  • 📜 Audit Log: every change in a Community, who made it and when, read as plain sentences, from roles and bans to channels, pins and invite links. A Sync Report beside it explains a Community that looks stuck on old state.
  • 🏷️ Nicknames & Banners: go by a different name in each Community (anyone with Manage Nicknames can set one for you), and Communities get a Discord-style banner under their header. Right-click or press and hold a name in chat for the same menu the member list has.
  • 🚨 Moderation Console: anyone who can ban gets a console built for raids: every member weighed against what the Community saw, an alert when a wave lands, and one press to remove or ban a whole wave and rotate the keys behind them. The Policy Designer lets a Community write its own rules, and a rule can only be switched on from a preview that names the real members it would catch.
  • 📨 Requests: a DM from someone you've never replied to now waits in Requests, older chats included, and nothing of theirs loads until you answer or Accept: no pictures, files, link previews, custom emoji or wallpaper, and no typing indicator goes back to them. If you share a Community, their pictures still show.
  • 🧅 Tor, I2P or Clearnet: Settings > Privacy > Routing picks the network every connection uses, and if that network isn't ready Vector waits instead of quietly going direct. Tor builds a circuit per server (or one shared, your call), reaches .onion relays, and can ride a Tor you already run, like Tor Browser or Orbot. I2P runs through your own router. Vector's own relays and media servers have onion and I2P addresses built in, and you can pick a network before you even sign in.
  • 🎥 Streamer Mode: Settings > Privacy > Streamer Mode hides the names, pictures and keys of everyone who hasn't allowed streams, in the app and in your notifications, and can hide chat wallpapers too. Happy to be on someone's stream? Turn on Show me on streams.
  • 🔐 Sign in on Another Device: bring your account to a phone, computer or browser by scanning a code. Both devices check a number together, you approve on the old one, and your keys travel sealed both classically and post-quantum, never in a form anyone else can read. It's under Settings > Security, and on the login screen as Sign in with another device.
  • 🗄️ Private Media Storage: pictures, videos and voice notes you only look at now live in memory and never touch the disk. Keep Files on This Device keeps files encrypted so they open instantly and never download twice, Save puts a normal copy wherever you want it, and Vector's own caches (avatars, emoji, previews) are sealed on disk instead of sitting there as plain pictures.
  • 🎵 Music & the Floating Player: one player on every screen, album cards drawn from cover art, synced lyrics straight from the file, and whole albums in one file with a tracklist, queue and shuffle. Leave the chat and the Floating Player carries on right where you were, video too.
  • ▶️ YouTube & SoundCloud: links play right in the chat and follow you into the Floating Player. Nothing loads from them until you press play, and the players stay off over Tor or I2P (Settings > Privacy > Video Players).
  • 🟣 Nostr Embeds: posts, articles, videos, reposts and comments you reference in a chat show up as cards, each one checked against its signature.
  • 🧊 3D Models: glb, gltf, stl, obj and fbx files show in chat as a model you can spin, with a full-screen viewer and animation controls.
  • 🌈 Coloured Text & Commands: wrap text in <rainbow>, <gradient a b> or <color c> (or start a message with /rainbow, /gradient or /color), ansi code blocks render in colour, and /shrug, /flip, /unflip and /coinflip just work. Other Nostr clients get plain text.
  • 🕐 Times for Everyone: type @time (or /time) and "friday 8pm" turns into a time every reader sees in their own zone, as a date, a time or a live countdown. Discord's <t:…> codes work too.
  • 🐻 Kaomoji: a third tab in the picker beside Emoji and GIF, 335 faces across 30 categories, all searchable. ʕ•ᴥ•ʔ
  • 🔗 Vector Links: Copy Link on a Community, channel, message, Settings page or Nexus app gives you a link that opens on any device that holds it. It's resolved on that device alone, so no server ever sees what it points at.
  • 📌 Pins, Rearranged: drag your pinned chats into any order, and with the Community rail hidden, Communities can be pinned in your chat list too.
  • 🗃️ Archived Chats: archive a DM to tidy it away, pull past the top of your chat list to find it again, and it comes back by itself the moment someone writes.
  • 🖥️ Native Desktop Notifications: Windows, macOS and Linux get proper notifications with avatars, inline reply, mark as read and mute, and clicking one opens the chat at that message. Content Privacy gains a Hide sender option too.
  • 🗣️ Dictation: once a Whisper model is downloaded, turn a voice recording into text in the composer instead of sending it as audio.
  • 🎞️ Video Compression: on macOS and Windows, videos over 1 MB offer Compress Video, with a Video Quality setting (Small, Balanced, High or Original) under Settings > Storage. GIFs can be compressed too, animation intact.
  • 🧑‍💻 Advanced Mode: a synced switch under Settings > Dangerzone that adds Copy ID to Communities, channels, messages and people, for anyone building bots.
  • ✨ Chat Extras: Mark as Unread on any message, a Discord-style typing line above the composer, Send on Enter (on by default on computers, off on phones), several files dropped at once go out as one zip on desktop, profile pictures and Community icons crop before they upload, and a private key or seed phrase in a draft asks before it's sent.

Improved:

  • ⚡ Lighter on Memory: messages take far less room, chats you aren't looking at keep only a short tail in memory, photos bigger than their bubble show a display-sized copy, and animated pictures only move while you can see them. On macOS, switching Communities no longer leaks around 45MB a time.
  • 🔋 Quieter in the Background: no more once-a-second timers, the audio output sleeps when nothing's playing, hidden spinners stop spinning, and Android's background service waits for a relay to drop instead of checking every 10 seconds. Removing Concord v1 took its background syncing with it.
  • 🧠 Faster Whisper: transcription is about 4x faster on Android, faster everywhere else, more accurate, and uses 90MB less memory.
  • 🏎️ Faster Under the Hood: local encryption, JPEG encoding and decoding were rewritten on SIMD across every core, the database serves chat pages straight from its index, and boot hands the interface half the data it used to.
  • 🧭 Rebuilt Interface: the whole frontend was rebuilt on Svelte, so a change repaints the one row it touches and leaves your hover, scroll and selection alone. The login screens, Settings (now searchable, and an accordion on phones) and the chat list all got new designs along the way.
  • 📥 DM Catch-Up: missed DMs now catch up reliably on weak networks: each message is fetched once and saved as it arrives, and a relay that couldn't finish is retried in the background. Your contacts' inbox relays are remembered too, so a send no longer waits on looking them up.
  • ⏰ Relay Clock: a message dated in the future waits for its time instead of pinning itself to the bottom of the chat, and Vector corrects its clock when your relays agree it's off.
  • 🗑️ Deletes That Reach Relays: deleting a DM takes your copies off the relays with your own key and asks the recipient's Vector to delete theirs, and you can now delete DMs you received. Community deletes work from any of your devices, even after a reinstall.
  • 🔔 Notification Levels: set any Community or channel to All messages, Mentions or Nothing, and mute for anywhere from 15 minutes to 24 hours, or until you turn it back on.
  • 🧩 The Nexus: rebuilt around Discover, Library and Updates (with Update All), it lists what fits your device, and Play with Friends sends a game to any chat. Publishers can edit a listing without uploading the app again.
  • 🌸 Media Servers: Magnitude, Vector's own media server, now leads the defaults, and each server shows your plan and limits where it publishes them, plus its latency and speed from your device. On Magnitude, Full Premium Access (the V for Vector badge, or Bug Hunter tier 3) shows up as your Premium plan. Downloads stream to disk and resume where they stopped, uploads stream from disk, and either can be stopped outright.
  • 🕵️ Proxy Previews & Media: link previews and downloads now go through your Magnitude server instead of straight from your device, so the sites behind them see the server, not you. It's on by default, under Settings > Privacy.
  • 🔑 Stronger Local Encryption: every account now derives its key under a salt of its own (existing accounts move over at their next PIN or password unlock, with a short "Strengthening your encryption…" step), more of your data is sealed at rest, and exporting your keys asks for your PIN, password or biometrics. SVGs from other people are drawn to pixels by Vector itself, never by the webview.
  • 🚫 Blocking Means Gone: a blocked person's pictures are erased and never fetched again, their chat leaves your list at once, and a run of their messages folds into a single row.
  • 🛰️ Mini Apps: multiplayer now connects through a relay by default, so other players never learn your IP, and calls and multiplayer ask before connecting outside Tor or I2P. Mini Apps load only when they're shown, and on desktop they can use threaded WebAssembly and lock the pointer on macOS.
  • 🎧 Audio Devices: pick your microphone and speaker in Settings, Vector follows a device the moment it's unplugged, and the microphone is only asked for when a call, voice note or mic test needs it.
  • 🏘️ Snappier Communities: leaving is instant, bans and role changes land in about a second, and relays show their own names and icons, with a tag on any that ask you to sign in.

Fixed:

  • 📤 Big Files on Slow Connections: uploads had a hard five-minute limit, so a 100MB file needed nearly 3 Mbit/s of upload or failed on every server in turn. Now any steady progress keeps a transfer alive, downloads included.
  • 🔴 Phantom Red Messages: on weak networks, Community messages that really sent could turn red, and Retry posted them twice. Vector now checks the relays before calling a send failed, quietly resends the same copy, and Retry never duplicates.
  • ✉️ "Sent" That Never Arrived: when a contact's inbox relays couldn't be reached, DMs fell back to your own relays and showed as Sent. They now fail and tell you why.
  • 🗑️ Deletes Stay Deleted: a deleted Community message, a moderator's delete included, no longer comes back when a relay serves it again.
  • 🚪 Leaves Stay Left: a Community you left can't sneak back from an older copy of your Community List, on any of your devices.
  • 🧅 Tor, All the Way: the GIF picker and the updater now go through Tor when Tor is on, instead of connecting directly. The updater works over Tor for the first time, too.
  • 🔏 Remote Signer QR Pairing: after pairing a signer by QR code, requests no longer hang until they time out.
  • ⏳ Self-Destruct: edits now expire with their message, and a slow upload no longer eats into a self-destructing file's lifetime.
  • 📎 File Sends: cancelling an upload stops the transfer, a failed file can be retried instead of vanishing, your own files sent from another device download again, files sent as a reply keep their reply in DMs, and a reply you started stays with its chat when you switch away.
  • 🎞️ Animations Stay Animated: animated WebP and APNG images are no longer flattened into a still when sent, and Android now compresses a picked photo when the preview says it will.
  • 🔢 Unread Counts: chats no longer come back unread after a restart, counts catch up after a sync, and opening a chat once is enough to clear it.
  • 📊 Storage Per Account: with several accounts on one device, the storage chart counted, and its deletes removed, every account's files. It's only this account's now.
  • 💻 Desktop Fixes: on macOS, a long session could run out of open files, and a Mini App behind another window slowed until its game timed out. On Windows the window no longer grows a little taller every launch, and on Linux copying files out of Vector and pasting files or images in now works on X11 and Wayland.
  • 🐧 Linux on the Newest WebKitGTK: Vector opened to a black window on WebKitGTK 2.54 (Raspberry Pi OS Trixie, and other distros as they update). It renders normally again, still steering clear of the GPU paths that garble some screens.
  • ✨ UI Polish: avatars come back after clearing the cache, a new contact's big profile picture shows, blocking someone removes their chat at once, chat list previews name a code block instead of going blank, and Vector no longer sends typing indicators to your own Notes.

Preview notes: this is Preview 3 of Vigil (v0.5.0), on the preview channel. You'll be offered the official v0.5.0 automatically the moment it releases.