A notes app for one person is a familiar build: notebooks and tags, a Markdown editor, attachments and full-text search in SQLite. Evernote's ENEX export keeps your archive portable, and Joplin and Obsidian already import it. A local web app with an importer is a weekend. What does not fit in one is what makes Evernote a daily driver: sync that never loses an edit between phone and laptop, the web clipper in every browser, search inside images and scanned PDFs, and mobile apps that work offline.
Before you buildEvernote Free keeps 50 notes in one notebook on one device. If your archive is bigger, export it first: Joplin and Obsidian import ENEX files directly if you would rather not build anything.
Build me a personal notes app to replace Evernote. Requirements: - Node.js 22 + TypeScript: a Fastify server and a React UI built with Vite. `npm start` serves http://localhost:4830. - Import: `npm run import -- export.enex` reads Evernote ENEX files with `fast-xml-parser`, turns the ENML into Markdown with `turndown`, and keeps title, created and updated dates, tags, source URL and notebook (the file name). Decode each `<resource>` into ./data/files/<sha256>.<ext> and link it from the note. Importing the same file twice must not duplicate notes. - Storage: better-sqlite3 in ./data/notes.db with notes, notebooks, tags and attachments, and FTS5 over title and body. Markdown is the source of truth and ./data/ is the only thing to back up. - Editor: a CodeMirror 6 Markdown editor with live preview, paste or drop of images and files, task checkboxes, autosave every 2 seconds and the last 20 versions of each note. - Browse: notebook and tag sidebar, search with notebook:, tag: and created: filters, pinned notes, and a trash that purges after 30 days. - Web clipper: a bookmarklet that posts the page URL and selected text; the server fetches the page and saves a clean article with `@mozilla/readability`. - OCR: an optional `tesseract` command from .env runs in the background on image attachments and PDFs and indexes the text in FTS5. - Single user: one password in .env and a signed cookie. No accounts, no telemetry, local-first. - Out of scope: mobile apps, offline sync, sharing, reminders, an email-in address. - README: import steps (Evernote exports 100 notes at a time, or whole notebooks), a check that the note count matches the export, and a backup example.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Evernote.
Extend the notes app in this folder. Requirements: - A background job that extracts text from PDFs with `pdf-parse` and falls back to `tesseract` for scanned pages and images, storing the text per attachment. - Index it in FTS5 with a column that marks the hit as coming from an attachment; show the file name and page with each result. - Skip files over 50 MB, retry failures twice, and show a status list of queued, done and failed files. - Update the README with the Tesseract install steps.
Make the notes app in this folder usable on a phone. Requirements: - A responsive layout, a web app manifest and a service worker that caches the app shell and the last 50 opened notes for offline reading. - A quick-capture page at /new that saves a text note or a photo, works offline, and uploads queued captures when the connection returns, without overwriting newer edits. - Keep the password login and require HTTPS outside localhost. - Update the README with Caddy or tunnel setup.
Add read-only sharing to the notes app in this folder. Requirements: - From a note, create a link at /s/<token> with 32 random bytes, an optional expiry and a revoke button. - The shared page renders the Markdown with attachments, sets noindex, and shows nothing else. - Log opens per link (time only, no IP) and list active links in a settings page. - Update the README with a warning that anyone with the link can read the note.
Years of notes, scans and clippings already live there and sync everywhere, and the Free plan's 50-note cap makes a big archive unusable. A long-time user's 2026 forum thread calls the new tiers a shock, but moving a large archive is work, so many stay.
Estimate · Runs on your laptop for free, or on a $5 VPS for phone access. The build is token usage on your agent plan.
Checked 2026-10-19 against Evernote's docs: 1, 2, 3, 4, 5, 6
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Free | $0 | $0 | 50 notes, 1 notebook, 5 spaces, 1 connected device, 1 GB of uploads a month, tasks, calendar and the web clipper. |
| Starter | $14.99 | $8.25 | 1,000 notes, 20 notebooks, 1,000 attachments, 3 synced devices, 5 GB storage, 5 external calendars and the AI features. |
| Advanced | $24.99 | $20.83 | Unlimited notes, notebooks, attachments, devices and storage, subject to safeguard limits, plus the AI features. |
| Flexible | custom | — | Team plan priced by use: notes from 500 up, devices from 4 per seat, storage from 250 MB per seat, shared spaces and an admin console. |
| Enterprise | custom | — | For 10 or more seats: company ownership of data, SSO and SCIM, activity logs, a success manager. |
Free keeps 50 notes, one notebook and one synced device.
Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: Mobile apps with offline notes and sync that handles conflicts, The web clipper extension for every browser, and an email-in address.
About $14.99 a month on the Starter plan, $179.88 a year (checked 2026-10-19).
Mobile apps with offline notes and sync that handles conflicts; The web clipper extension for every browser, and an email-in address; Search inside images and scanned documents on every device; Tasks and calendar linked to notes, and the AI Assistant, Transcribe and Edit tools; Sharing notes with other people and the Google, Outlook and Slack integrations. If any of those matter to you, keep paying.
Yes: Joplin (open source), Notesnook (open source), Trilium Notes (open source).