Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/arverma/Bihar-Police-Notebook/llms.txt

Use this file to discover all available pages before exploring further.

Bihar Police Notebook is a static web application — there is no application server that receives, processes, or stores your documents. Every letter and FIR case diary you write lives in your own browser’s storage unless you explicitly choose to back it up. This page walks through each data surface in the app and explains exactly what goes where.

Document storage

All documents are saved to IndexedDB in your browser, scoped to the origin bpdiary.arverma.dev. The database is named bp-writing-tool and contains two object stores: letter and diary. The app’s own infrastructure never touches this data.

On-device only by default

No letter or diary content is transmitted to any server during normal use. Documents accumulate entirely in your browser’s local storage.

Origin-scoped isolation

IndexedDB is sandboxed to bpdiary.arverma.dev. Other websites, apps, or browser extensions cannot read your documents (absent a browser vulnerability).

No tracking or telemetry

The application itself collects no analytics, usage telemetry, fingerprinting data, or crash reports. There is no tracking script embedded in the editor.

Clearing site data

Clearing your browser’s site data for bpdiary.arverma.dev permanently deletes all local documents. Back up to Drive before clearing if you want to keep them.

Google Drive backup

Drive backup is entirely opt-in and manual. Nothing is uploaded until you explicitly connect a Google account from the History sidebar and click a sync action.
When you connect Drive and run a sync, the app uploads each document as a JSON file ({uuid}.json) to a folder named “Bihar Police Notebook Backup — do not delete” in your own Google Drive. The JSON contains the document content, filename, timestamps, and a deleted flag. No data goes to any server other than Google’s Drive API — and only to the Drive account you chose.

Cached access tokens

When you connect Google Drive, the short-lived access token (valid for approximately one hour) is cached in a second IndexedDB database named bp-writing-tool-auth for up to 24 hours. This avoids a Google login popup on every page refresh.
XSS on the editor origin is high impact. Malicious JavaScript that can execute on bpdiary.arverma.dev could read the cached Drive access token from bp-writing-tool-auth before it expires. Treat any cross-site scripting vulnerability in the editor as a critical security issue and report it privately. The token grants access only to files in the app’s own Drive folder (due to the drive.file scope), but that still means an attacker could read or modify your backed-up documents.
The session record is automatically discarded after 24 hours. Clicking Disconnect, clearing browser site data, or clearing bpdiary.arverma.dev IndexedDB removes it immediately.

Hinglish transliteration

The editor includes an optional Hinglish (Roman-to-Devanagari) transliteration feature powered by Google Input Tools.
Transliteration sends only the current word being typed — not the surrounding sentence or full document — to the Google Input Tools API. This request is made only when the transliteration toggle is on and the device has internet connectivity. If the device is offline, the feature gracefully degrades and no request is attempted.
Preference keys that control transliteration behaviour (bpnt.dictation.lang, etc.) are stored locally in localStorage and are never transmitted.

Voice dictation

The app supports voice dictation in two modes:
When an on-device speech recognition pack is available for the selected language, dictation is processed entirely on the device. No audio is sent to any remote server. This is the default and preferred mode.

Preferences and localStorage

Non-document settings (Drive connection state, dictation preferences, and UI flags) are stored in localStorage under keys prefixed with bpnt.. These values are:
  • Not synced to any server.
  • Not included in the Drive backup.
  • Readable only within the bpdiary.arverma.dev origin.
  • Cleared when you clear site data for the origin.

Summary

Data surfaceWhere it livesOpt-in?Leaves device?
Letters and FIR diariesIndexedDB (bp-writing-tool)Only if you connect Drive
Drive access tokenIndexedDB (bp-writing-tool-auth)Yes — requires connecting DriveNo (stored locally)
Drive backup filesYour Google Drive (folder you own)Yes — manual syncYes, to Google Drive only
Transliteration requestsGoogle Input Tools APIYes — toggle must be onCurrent word only
Voice audio (cloud)Cloud speech serviceYes — explicit consent per languageOnly after consent
UI preferenceslocalStorage (bpnt.* keys)No
Analytics / telemetryNowhereNo (app collects none)
For the highest level of privacy, keep the Drive backup disconnected and use on-device voice dictation. All document content remains entirely on your device in that configuration.

Build docs developers (and LLMs) love