TakeNote is a web-based note-taking application designed around a developer-friendly, IDE-like editing experience. Notes are plain text with Markdown preview, syntax highlighting, multiple cursors, keyboard shortcuts, and optional Prettier formatting. Notes can link to one another through UUID references and can be organized through categories, favorites, search, drag and drop, and trash. The public demo stores data only in browser local storage and does not use tracking or analytics. Users can download their notes as Markdown files in a ZIP archive. The repository also contains an alternate self-hosted Node and Express version that can synchronize notes to a private GitHub repository. The application is built primarily with TypeScript, React, Redux, CodeMirror, Node, Express, Jest, and Cypress.
Features
- Plain-text editing with Markdown preview
- Syntax highlighting and multiple cursors
- Linked notes using UUID references
- Categories, favorites, search, and drag-and-drop organization
- Local browser storage with Markdown export
- Optional self-hosted GitHub synchronization