How Datieve works
Three components work together: an agent on your NAS, a desktop app for employees, and a license server for activation.
Architecture overview
Your NAS
Datieve Agent runs here in Docker
Workstations
Employees run the desktop app
License server
Daily check-in for activation
The Agent
The agent is a Go binary that runs on your NAS inside a Docker container. It has three jobs:
Index files
On first run, the agent walks through your configured folders and indexes every file and directory. It stores metadata (name, path, size, modification time) in a local SQLite database with full-text search enabled.
Watch for changes
The agent uses filesystem notifications to detect new, modified, and deleted files in real time. A periodic delta scan catches anything the watcher might miss.
Serve the API
The agent exposes a WebSocket API on your local network. The desktop app connects to this API to authenticate users, search files, and browse folders.
The Desktop App
Employees install the desktop app on their workstations. It's built with Tauri—lightweight and cross-platform.
Connect to the agent
On launch, the app asks for the agent's address (your NAS IP and port). It connects over your local network—no internet required.
Authenticate
Users log in with their email and password. First-time users activate their account by setting a password. The agent verifies credentials and returns the user's folder permissions.
Browse and search
The app displays folders and files the user has access to. Search queries are sent to the agent, which runs them against the SQLite database and returns results in milliseconds.
Access Control
Not everyone should see every file. Datieve uses a simple group-based permission model.
Users
Admins add users by email through the agent's web interface. Users receive their login credentials and activate their account on first login.
Groups
Create groups like "Engineering", "Legal", or "Marketing". Assign users to groups based on what they need to access.
Folder permissions
Each group is granted access to specific folders. Users only see files within folders their groups can access. Search results are automatically filtered.
Ghost File Tracking
When a file is deleted from your NAS, Datieve doesn't remove it from the index. It marks it as a "ghost"—still searchable, but clearly labeled as deleted.
Why this matters
Someone asks "where's that contract from last quarter?" The file was deleted, but Datieve shows when it existed, where it was, and when it was removed. This helps with auditing, recovery from backups, and just knowing what happened.
Ghost files don't count toward limits
Your plan's file limit only counts active files. Deleted files tracked as ghosts are free—you're not penalized for keeping history.
License Check-in
Once a day, the agent contacts our license server to verify your subscription is active.
What we receive
Your license key, the count of active files, and the count of deleted (ghost) files. We do not receive file names, paths, or any content.
What we return
Whether the license is valid, your tier, expiration date, and file limits. The agent uses this to enforce your plan's file cap.
Offline operation
If the check-in fails (network issue, our server is down), the agent continues operating with the last known license state. It will retry on the next cycle.