Skip to content

Room Types

chatnote has three room types, each with different storage and lifetime semantics.

Persistent

  • Storage: SQLite (disk)
  • Lifetime: until you delete it
  • Features: all — tags, link previews, image uploads to disk, JSON export

This is the default. Use it for notes you want to keep.

Ephemeral

  • Storage: Node.js heap (RAM)
  • Lifetime: TTL you set at creation, or until the server process restarts (blank TTL = unlimited)
  • Features: Markdown, images (inline data-URL); no link previews, no tags, no export

Ephemeral rooms have a best-effort lifespan. A TTL of 1h means the room may last up to 1 hour, but a server restart or crash wipes it immediately regardless of remaining TTL. Do not rely on ephemeral rooms for retention guarantees.

Incognito

  • Storage: Node.js heap (RAM)
  • Lifetime: until the tab closes
  • Features: same as ephemeral

Incognito rooms fire a sendBeacon to the server when the tab's pagehide event fires, wiping all incognito rooms for your session. Nothing about an incognito room's content is written to disk at any point.

Comparison

PersistentEphemeralIncognito
StorageSQLite (disk)Node heapNode heap
Survives restart
TTLoptionaluntil tab closes
Tags
Link previews
Images on disk
Export

Released under the Apache-2.0 License.