Skip to content
← All workCase 06 / 06

Notes

Productivity

Year
2024 — 26
Built with
React 18, TypeScript, Vite 5, CSS +2 more ↓
notes-sepia-omega.vercel.app
Notes — screenshot of the live site

(01) Overview

A notes app that stays out of the way. Folders down the side, notes in the middle, the editor on the right — everything saves as you type and is still there when you come back.

(02) Features

  1. 01FoldersCreate and delete folders, and move a note between them from the editor.
  2. 02PinningPinned notes stay on top; the rest sort by their last edit.
  3. 03SearchFilter the current folder as you type.
  4. 04First line is the titleNo separate title field — the first line names the note and the rest is its preview.
  5. 05Light and darkFollows the system on the first visit, then remembers your choice.
  6. 06BackupExport every note and folder as JSON in one click.

(03) Screens

notes-sepia-omega.vercel.app
Notes — Dark theme, inside a folder
03.1Dark theme, inside a folder
notes-sepia-omega.vercel.app
Notes — Search across every note
03.2Search across every note

(04) On a phone

Same app, smaller screen.

Captured from the live site at 390 pixels wide — the width of most phones in a hand.

Notes on a phone — All notes, pinned first
All notes, pinned first
Notes on a phone — The editor
The editor
Notes on a phone — Folders, in the dark
Folders, in the dark

(05) Stack

Six tools, and the job each one does here.

  • UIReact18One component and a persisted-state hook
  • LanguageTypeScriptThe note model and the app
  • BuildVite5Builds to a static site
  • StylingCSSHand-written, with light and dark themes on custom properties
  • DatalocalStorageNotes, folders and theme
  • HostingVercelStatic hosting

(06) Under the hood

  1. 01

    A ten-line usePersist hook mirrors state to localStorage on every change, so there is no save button and no server.

  2. 02

    No runtime dependencies beyond React itself.

  3. 03

    On a phone the three panes become a stack — folders, list, editor — with a back button between each.

  4. 04

    A rebuild of the original Next.js version, which the write-up walks through from Figma to launch.

Next case

Lumora