A Chromium browser extension for taking notes on DSA questions
Detects when you’re on a single question page (LeetCode or Codeforces)
Supports Markdown notes, labels, autosave, export/import, and browsing all saved notes in one place.
If you’d rather not build from source, download a pre-built zip from the Releases page:
unzip <file>.zip -d <folder>npm install
npm run build
This produces a dist/ folder — the actual loadable extension.
chrome://extensionsdist/ folder or unzipped folderhttps://leetcode.com/problems/two-sum/
or https://codeforces.com/problemset/problem/2256/AWhen you open a supported question page, O(note) detects the question and provides a floating notes panel.
Use the panel to write and save notes while solving the problem. Notes are autosaved and stored locally in the extension’s IndexedDB database.
The extension popup provides quick access to:
The View page lets you search through saved notes and filter them by site or label. Notes can also be sorted by when they were last updated.
| Shortcut | Action |
|---|---|
Alt + L |
Toggle the panel open/closed. Opening focuses the note and moves the cursor to the end of existing text (or the start, for a fresh question). |
Alt + K |
Switch between edit mode (raw markdown) and preview mode (rendered). |
Chrome may not automatically assign these shortcuts when the extension is installed in a new browser profile. If a shortcut is not set:
chrome://extensions/shortcutsThe shortcuts can be changed or removed from Chrome’s extension shortcut settings.
Notes are stored in IndexedDB, owned by the extension’s background service worker.
chrome://extensionsYou will not see note data under a LeetCode or Codeforces tab’s own Application panel — IndexedDB opened from a page is scoped to that page’s origin, not the extension. The service worker is the one place with a consistent view of all stored notes across every supported site.