Skip to main content

A lightweight, Markdown-based note-taking application with task management capabilities, providing a clean interface for creating, viewing, and managing notes with support for tasks, images, and code snippets.

Project description

NoteFlow

NoteFlow is a lightweight, Markdown-based note-taking application with task management capabilities. It provides a clean interface for creating, viewing, and managing notes with support for tasks, images, files,and code snippets.

Features

Initial View:

Initial View

Markdown Editor:

Markdown Editor

Upload Images and Files:

Upload Images and Files

Point in Time Site Copy/Bookmark:

Point in Time Site Copy/Bookmark

Multiple Themes:

Multiple Themes

Math Rendering:

Math Rendering

Features

  • 📝 One Big Markdown File: All notes stream into a single Markdown file, creating a natural timeline
  • ✅ Active Tasks Tracking: Active tasks automatically surface to a dedicated panel
  • 🔍 Pure Markdown: Write in plain Markdown and use checkboxes for task management
  • 💾 Zero Database: Your entire note history lives in one portable Markdown file
  • 🚀 Instant Start: Zero configuration required - just launch and start writing
  • 🔒 Privacy First: Runs entirely local - your notes never leave your machine
  • ✨ Modern / Retro Interface: Clean, responsive design built with FastAPI
  • 📚 Site Links and Archival: Save site links, and generate a static HTML archive version of linked sites
  • 🎨 Multiple Themes: Choose from a variety of themes
  • 🔗 Save Files/Images: Archive files and images locally
  • 🖥️ Multiple Instances: Open multiple instances of Noteflow to take notes in different directories

Quick Start

To quickly get started with Noteflow, follow these steps:

Installation Options

Using pip (All Platforms)

pip install noteflow

Using Homebrew (macOS/Linux)

brew tap Xafloc/noteflow
brew install noteflow

Running Noteflow

You can run Noteflow in several ways:

From Current Directory

noteflow

Specify a Notes Directory

# Linux/macOS
noteflow /path/to/notes/folder

# Windows
noteflow C:\path\to\notes\folder

Run Multiple Instances

You can run multiple instances by specifying different ports:

noteflow --port 8000  # First instance
noteflow --port 8001  # Second instance
  1. Access the Application: Your web browser should open automatically. If not, open your browser and navigate to:
    • Default instance: http://localhost:8000
    • Additional instance ports: http://localhost:<port>

Requirements

  • Python 3.9+
  • FastAPI
  • uvicorn
  • markdown-it-py
  • mdit-py-plugins
  • Other dependencies listed in requirements.txt

Taking Notes

  • Type your note in the content area
  • Optionally add a title
  • Click "Add Note" or press Ctrl+Enter to save

Creating Tasks

  • Use Markdown checkboxes:
    - [ ] New task
    - [x] Completed task
    
  • Tasks automatically appear in the Active Tasks panel
  • Click checkboxes to mark tasks as complete

Attaching Images and Files

  • Drag and drop images or files into the Noteflow input box to attach them to your note
  • Images and files are automatically embedded in the note and saved locally within the assets/images and assets/files folders

Saving Site Links and Archiving

  • Create a link in your note by typing + followed by the URL (e.g., +https://www.google.com)
  • Site link will be saved and archived locally within the assets/sites folder

Markdown Support

NoteFlow supports standard Markdown syntax including:

  • Headers
  • Lists (bulleted and numbered)
  • Checkboxes
  • Bold/Italic text
  • Code blocks
  • Strickthrough
  • Tables
  • Blockquotes
  • Math (using MathJax)
  • And more!

File Structure

Your notes are stored in notes.md in your working directory. The file format is simple:

## 2024-10-30 12:34:56 - Optional Title

Your note content here...

---

## 2024-10-30 12:33:45

Another note...

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details. This license ensures that:

  • You can freely use, modify, and distribute this software
  • Any modifications or derivative works must also be licensed under GPL-3.0
  • The source code must be made available when distributing the software
  • Changes made to the code must be documented

For more information, see the full license text.

Made with ❤️ for note-taking enthusiasts

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

noteflow-0.2.4.tar.gz (714.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

noteflow-0.2.4-py3-none-any.whl (707.7 kB view details)

Uploaded Python 3

File details

Details for the file noteflow-0.2.4.tar.gz.

File metadata

  • Download URL: noteflow-0.2.4.tar.gz
  • Upload date:
  • Size: 714.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0

File hashes

Hashes for noteflow-0.2.4.tar.gz
Algorithm Hash digest
SHA256 f7c9f4665f03c8ef468169fa511b4999f5af3cc3f8cd94ac823883a33fabedac
MD5 532f6c0549d51d0b5f6071dc9f341773
BLAKE2b-256 d945d0a7c0c8c2dd636925491fab715894e22ce8ea73b12cae7e5b1d0db1bdb2

See more details on using hashes here.

File details

Details for the file noteflow-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: noteflow-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 707.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0

File hashes

Hashes for noteflow-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 3dc35e33aa2ef2c46b85abeb27c115cb7fd1b905d7880428dc202abb5ddc521a
MD5 6ece013867914225e1f609c543db7050
BLAKE2b-256 f72cd9732a78de4b106c94ec5a33998477380cb85533d451f66c6293c16062d2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page