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

FORMAT CHANGE NOTICE: As of version 0.3.0, the note separator has changed from --- to <!-- note -->. Please update your notes.md file to use the new format.

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 directories:

noteflow /path/to/notes/folder1  # First instance
noteflow /path/to/notes/folder2  # 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
  • Strikethrough
  • Tables
  • Blockquotes
  • Math (using MathJax)
  • And more!

File Structure

Your notes are stored in notes.md in your working directory, or the passed path argument. The file format is simple:

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

Your note content here...

<!-- note -->

## 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.3.0.tar.gz (717.8 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.3.0-py3-none-any.whl (710.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for noteflow-0.3.0.tar.gz
Algorithm Hash digest
SHA256 a54145f2b77eaee645bdff090e40226a31131ac9ae0aef4ada7fd6317dbf7743
MD5 781d873fb28f5df3e96d6d92fcda5168
BLAKE2b-256 b0a21ab8b7c7c8c7932bbeabe206c3ef5737085413fe79a709f936489c3d77b4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: noteflow-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 710.2 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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6f41592f6d1155437578c9705232568e35da47279a42a172f58fae960b53e909
MD5 4c503016ecc1f3f0359f3f82b729bfe8
BLAKE2b-256 c74fc46956609f68612cf96ab2436f744efe84d5c967475b0b8e0da3f39465d7

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