Synchronization
Vector Messenger Syncing Process

When opening Vector and loading on the Chat Tab, you will be greeted with a green flashing bar that represents your client and account syncing. It is recommended to let this process complete before sending messages, though it is not required. Messages can still be sent while Vector is syncing, but it is best to let it finish syncing to make sure you have the latest messages displayed properly.
How it Works
The local database loads first (instant UI) and has offline support (you will see everything that you already received). Background tasks keep relays healthy and profiles fresh. Below you can find more details about the Vector Syncing Process.
Syncing Process
1. Login & Connect
Vector loads your Nostr keys and connects to your configured relays. If Tor is enabled, the embedded Tor client bootstraps before any connection is made, so no traffic reaches the network in the clear.
2. Initial Load
Before touching the network, Vector loads everything it already has from your local encrypted database:
Saved profiles, chats, and the most recent message in each conversation
Recent event IDs preloaded into memory for duplicate detection
A check that previously downloaded attachments still exist on disk
This is sent to the interface immediately, so your chats appear almost instantly, well before network syncing begins.
3. Network Sync
Vector then fetches anything new from your relays.
Direct messages arrive as GiftWraps (NIP-17 and NIP-59). Each event is unwrapped, deduplicated against both the in-memory cache and the database, and saved locally.
Communities load through Volley Sync, which pulls each Community's freshest messages in batched volleys, most recently active first, so channels paint in seconds rather than minutes.
As of v0.4.1, Cursor Sync records exactly where each relay left off between sessions. Rather than re-scanning history on every launch, Vector resumes from its last known position, cutting the initial direct message sync from up to a minute down to a couple of seconds.
The sync progress bar is visible during this phase.
4. Real-Time Subscriptions
Once the initial sync completes, Vector opens live subscriptions across all connected relays for:
GiftWraps (direct messages and files)
Community
Vector's sync and boot performance improved substantially in v0.4.1. Cursor Sync remembers exactly where each relay left off between sessions, cutting the initial direct message sync from up to a minute down to a couple of seconds. Volley Sync loads Communities in batched groups at startup, most recently active first, so every channel appears within seconds rather than minutes. Underneath both, deep syncs now persist in single batched transactions, unread counts are served from an in-memory cache, and all hex encoding and decoding runs through SIMD instructions, up to 59 times faster to encode and 8.6 times faster to decode.
Last updated