Skip to content

Latest commit

Β 

History

History
88 lines (68 loc) Β· 3.73 KB

README.md

File metadata and controls

88 lines (68 loc) Β· 3.73 KB

πŸ“ Sticky Notes

A beautiful, minimal sticky notes app that runs entirely in the browser β€” no accounts, no server, no build step. Create, drag, resize, format, organize, and search your ideas. Everything is saved automatically to localStorage, and the app works offline as an installable PWA.

Live demo: https://note.ryn.bd/

Sticky Notes demo

Features

Writing

  • Rich Text Formatting β€” bold, italic, underline, strikethrough, highlight, headings, bullet & numbered lists, code blocks, quotes
  • Checklists β€” click-to-toggle checkboxes with live progress (2/3 βœ“) in the note footer
  • Markdown-style shortcuts β€” type - , 1. , [] , # , > , or ``` at the start of a line and it converts instantly
  • Word counter β€” live word count per note
  • Safe β€” pasted content is inserted as plain text and note HTML is sanitized against XSS

Organizing

  • Views β€” switch between Notes, Favorites, Pinned, Archive, and Trash
  • Pin β€” pinned notes always stay on top of the stack
  • Favorite β€” star important notes and filter to just those
  • Archive β€” tidy the board without deleting anything
  • Trash Bin β€” deleted notes are kept for 30 days; restore or delete forever
  • Search β€” filter notes live as you type (press / or Ctrl+F)
  • Duplicate β€” copy any note with one click or Ctrl+D

Experience

  • Drag & Drop β€” works with mouse and touch (Pointer Events); notes can't be lost off-screen
  • Resize β€” grab the bottom-right corner of any note
  • Colors β€” 6 quick presets + a full color picker per note
  • Themes β€” dark and light, following your system preference by default
  • Auto-Save β€” everything persists in localStorage, with a live save indicator
  • Undo β€” deleting, archiving, and clearing all show an Undo toast
  • Export / Import β€” back up all notes to a JSON file and restore them anywhere
  • Multi-tab safe β€” changes in one tab sync to others
  • Offline / PWA β€” installable, with a service worker that caches the app shell
  • Accessible β€” keyboard shortcuts, ARIA labels, visible focus states, reduced-motion support

Keyboard shortcuts

Press Ctrl+/ in the app for the full list.

Shortcut Action
Alt+N New note
/ or Ctrl+F Focus search
Ctrl+/ Shortcut help
Double-click canvas New note at that spot
Ctrl+B / Ctrl+I / Ctrl+U Bold / Italic / Underline
Ctrl+Shift+X Strikethrough
Ctrl+Shift+L or Ctrl+Shift+8 Bullet list
Ctrl+Shift+7 Numbered list
Ctrl+D Duplicate note
Ctrl+P Pin / unpin note

Tech Stack

  • HTML5 + CSS3 (custom properties for theming, gradients, animations, native resize)
  • Vanilla JavaScript β€” no frameworks, no dependencies, no build step
  • localStorage for persistence, Pointer Events for input, Service Worker + Web App Manifest for PWA

Project Structure

β”œβ”€β”€ index.html            # App markup
β”œβ”€β”€ css/styles.css        # All styles (dark/light themes via CSS variables)
β”œβ”€β”€ javascript/script.js  # App logic (state, rendering, editor, views, persistence)
β”œβ”€β”€ sw.js                 # Service worker (offline cache)
β”œβ”€β”€ manifest.webmanifest  # PWA manifest
└── assets/               # Icon and screenshots

Getting Started

  1. Clone the repo
    git clone https://github.com/WPCodeLab/StickyNotes.git
  2. Open index.html in your browser β€” no build step needed. (For the service worker/PWA features, serve it over HTTP, e.g. npx serve or GitHub Pages.)

Privacy

All data stays in your browser's localStorage. Nothing is ever sent to a server.

Credits

Made with ❀️ by ryn.bd