Skip to content

Sync & Storage

Noust prioritizes data sovereignty. Your notes are yours, and you decide where they go.

Export & Import

Take your data with you in a standard format.

  • Export: Generates a .npad binary package containing all notes, sections, settings, and environment variables. This format is highly optimized and supports embedded binary assets (like images). We recommend encrypting the file during export for maximum security.
  • Import: Restore your workspace from a previously exported .npad or legacy .json file.
  • Note: Importing will overwrite your current active session.

Storage Architecture

Noust uses a tiered, high-performance approach to local persistence to ensure maximum reliability and data sovereignty.

  1. Primary Engine (IndexedDB): Our main local database. Workspaces are stored under isolated partitions (workspace_{id}), supporting large datasets and binary assets while enabling Local Encryption (At-Rest).
  2. Native Background Auto-Save: Data persistence is continuous, automatic, and always-on. Every edit, note movement, and structural change is asynchronously saved to IndexedDB in the background without blocking the UI thread.
  3. Fallback (LocalStorage): Used as a fail-safe recovery path only if the browser blocks IndexedDB access. Note: Local Encryption is not available in fallback mode due to storage limits.

Multi-Workspace Partitioning & Cross-Tab Sync (Event Storage)

  • Workspace Partitioning: Each workspace maintains its own isolated storage bucket. Switching or deleting a workspace cleanly loads or purges its canvas nodes, positional snapshots, and cloud workspace metadata without affecting other workspaces.
  • Cross-Tab Sync Toggle: You can customize cross-tab synchronization in Settings > Behavior:
    • Enabled (Default): Edits and workspace switches propagate in real-time across all open browser tabs via Event Storage / BroadcastChannel.
    • Disabled: Turns each browser tab into an independent session, allowing you to work in different workspaces side-by-side in separate tabs without tab interference, while background auto-save continues to keep all workspaces safely stored on disk.

Cloud Synchronization

Our cloud synchronization is built on a Zero-Knowledge Architecture. This means we provide the storage, but we never see the data.

How it Works

  1. Binary Packing: Your workspace data and assets are packed into a .npad binary envelope to minimize data footprint and eliminate Base64 overhead.
  2. Local Encryption: Data is encrypted in your browser using AES-256-GCM.
  3. Encrypted Blob: Only the encrypted "blob" is sent to our servers.
  4. Key Retention: The keys (your password and optional salt) never leave your device.
  5. Desynchronize: Collaborators or owners can desynchronize a shared workspace at any time. This severs the cloud link while preserving a fully accessible private copy in your local workspace.

Cloud Workspace Actions

  • Sync (formerly "Save"): Sends and syncs your local workspace changes to the cloud. If you are creating a new workspace for the first time, this action is labeled Send (or Sync).
  • Load: Opens and loads a workspace from your cloud list into your active session.
  • Sync (formerly "Auto-Sync"): Toggles automated background synchronization for the active workspace.

Update Detection & Visual Indicators

Noust continuously verifies workspace freshness across your devices. Checks occur both manually (clicking Refresh in the workspace list or opening the Cloud Sync panel) and automatically (e.g., upon network reconnection, resuming after system sleep, or returning after an extended idle period).

When a newer version of your workspace is detected on the cloud, Noust alerts you in 3 distinct UI locations:

  1. Global Header Icon: The Sync icon in the main app toolbar displays an update notification badge.
  2. Workspace List Badge: A hollow indicator dot appears next to the workspace item in My Cloud Workspaces or Shared with Me.
  3. Cloud Form Notice: An "Updates Available" action button appears inside the active Cloud Workspace management panel.

Intelligent 3-Way Line Merge & Conflict Protection

When pulling updates from another device, Noust performs an automated 3-way line-level merge across notes, sections, objectives, and topology metadata:

  • Conflict Prevention: To protect you from accidentally overwriting changes made on another device, Noust blocks manual Sync operations whenever remote updates or unresolved conflicts are detected. You must pull and resolve the latest remote changes before pushing local updates.
  • Granular Conflict Resolution: If changes collide on the exact same line, Noust opens an interactive conflict resolution modal allowing you to select line-by-line which version (Local vs. Cloud) to preserve.

Auto-Update (Paid Subscription Tier)

Users on paid subscription tiers gain access to Auto-Update, which automates background synchronization without interrupting your workflow:

  • Automated Pull & Merge: When a remote update is detected and no structural conflicts exist, Noust automatically pulls and merges the remote version in the background.
  • Security & Password Verification: Auto-Update executes seamlessly provided Sync is enabled and your local session is decrypted using the same security password as the incoming cloud workspace.
  • Typing Idle Safety: To prevent typing collisions or cursor jumps while you write, Auto-Update waits for a brief period of editor typing inactivity before applying the background merge.
  • Non-Intrusive Notifications: A subtle toast notification confirms when a background auto-update has completed successfully.
  • Blocking Merge Fallback: If an unresolvable structural merge conflict occurs during an automated update, Noust safely pauses automatic merging to protect your data, flags the workspace with an update notice, and prompts you to resolve the conflict manually.

Visual Indicators

The Cloud icon appears in the global header to indicate that the current active workspace is synchronized with the cloud. When the cloud icon is filled, it indicates that Auto-Update is currently activated for this workspace.

Decryption Requirements

To restore your data from another device, you must provide:

  • Your Encryption Password.
  • Your Custom Salt (if used).

Important

There is no mechanism to recover your data if you lose your password or salt. We do not store them, and we cannot reset them for you.

Collaboration & Shared Workspaces

Noust allows you to share specific cloud workspaces with other users.

  • Selective Sharing: Share only the workspaces you choose.
  • Discovery Protection (Username Basis): Sharing is intentionally restricted to exact usernames only. We strictly avoid searchable emails or public user lists to ensure that your presence on Noust is never discoverable or "enumerable" by third parties.
  • Collaborator Roles: Each collaborator can be assigned one of two roles:
    • Reader: Can sync and read the shared workspace in read-only mode.
    • Editor: Can sync the workspace and submit local changes for the owner to review.
  • Manage Roles and Revoke Access: As workspace owner, you can change collaborator roles (Reader/Editor) or revoke access at any time. When promoting to Editor, confirmation is authenticated via the credentials modal.

Collaborator Updates & Owner Review

When an Editor collaborator submits changes, the workspace owner receives a pending update notification in the Collaborators panel.

  • Pending Updates Panel: The owner can see how many updates are pending, who submitted them, and their size and timestamp.
  • Provisional Review: Clicking Review loads the collaborator's changes into the workspace for visual inspection. The owner sees the merged result directly in the editor before making a decision.
  • Accept or Discard: After reviewing, the owner can:
    • Accept All: Applies and saves the merged changes to the cloud workspace.
    • Discard All: Instantly restores the workspace to its original state, with no changes applied. No data is lost.
  • Delete Without Review: The owner can also delete a pending update directly from the panel without opening it.

Conflict Handling

If both the owner and a collaborator edited the same note or line, Noust automatically attempts a 3-way merge. When a conflict cannot be resolved automatically, conflict markers are shown inline so the owner can make an informed decision before accepting or discarding.

Zero-Knowledge Sharing (E2EE)

Shared workspaces maintain the same Zero-Knowledge guarantee as personal workspaces. The workspace password is delivered to collaborators as an encrypted E2EE Envelope — sealed with the collaborator's personal E2EE public key.

  • Collaborator Authorization & Password Requirement: When authorizing a collaborator, the workspace owner is prompted to provide the workspace's exact encryption password (and salt). The browser encrypts these credentials into an E2EE Envelope using the recipient's public key.
  • Envelope Delivery: The server never has access to the workspace password, private keys, or plaintext content.
  • Credential Verification (keyVerifier): When an Editor submits an update, the server verifies a SHA-256 hash (keyVerifier) derived from the workspace's password and salt. This ensures the collaborator is using the exact same password and salt defined by the owner before accepting the update.
  • Updating Collaborator Keys (Update Keys): If the owner changes the encryption password or salt of a cloud workspace that has already been shared, existing collaborators will lose access because their existing envelopes were encrypted with the old credentials. The owner can restore access at any time using the Update Collaborator Keys button (the key icon in the Collaborators card or the "Update collaborator keys on sync" checkbox in the Sync panel) to re-encrypt envelopes and update keyVerifier for all collaborators at once.
  • Vault Unlock Requirement: Collaborators must have their E2EE Vault unlocked (in Profile > Security) to decrypt envelopes and access shared workspaces. If the Vault is locked, access is safely blocked until unlocked.

Cryptographic Transparency

  • Private & Reader-Only Workspaces: Operate on absolute Zero-Knowledge — no credentials, hashes, or cryptographic clues are sent or stored on the server.
  • Exclusive Validation for Editors: Only when the owner grants Editor permissions to a collaborator is a one-way SHA-256 hash (password + salt) temporarily stored as a keyVerifier. It serves exclusively for the server to validate whether Editor collaborators are submitting updates with the correct encryption credentials (password and salt), without the server ever knowing your actual password.
  • Automatic Refresh on Sync: Whenever the workspace owner synchronizes (Sync) a cloud workspace, the keyVerifier is automatically updated on the server only if at least one active Editor collaborator exists in that workspace.
  • Strict Lifecycle: This hash remains associated with the cloud workspace only while active editors exist; upon revoking editor permissions or removing a collaborator, the keyVerifier is immediately and permanently eliminated from the server if no other active editors remain on the workspace (or if the workspace is deleted from the cloud).

Security Auditing (Advanced Tier)

Advanced Tier users gain access to a transparent, privacy-focused audit trail.

  • Access Logs: Track your own critical events (Sign-ins, Data Pushe, Deletions).
  • Privacy Protection: Logs identify the device family/Operating System and action type, but never expose your public IP address in the user-facing interface.
  • Verification: Use these logs to monitor for unauthorized access across your devices.

Account Management & Deletion

Noust provides a secure end-of-life process for your data.

  • Soft Delete: When you request account deletion, access is immediately suspended, but data is retained for a 30-day grace period for recovery before irreversible purging.
  • Confirmation Mechanism: To prevent accidental loss, deletion requires a deliberate string-match confirmation ({username}_delete).
  • Data Sovereignty: After 30 days, your identity is purged, though some metadata may be retained for up to 6 months in encrypted technical logs for legal compliance (LGPD/GDPR) before absolute permanent deletion.