Skip to main content

DevNotes

A tool for managing development notes and project tasks.

Features

  • Project task management
  • Code structure analysis
  • Mermaid diagram generation
  • Function relationship visualization
  • Task extraction from code comments
  • Trello integration for task synchronization

Installation

pip install devnotes

To use the diagram rendering functionality, you need to install mermaid-cli:

npm install -g @mermaid-js/mermaid-cli

Usage

Initialization

# Initialize a new project with the current directory name
# Initialize a new project with the current directory name
devnotes init

# Initialize a new project with a specific name
devnotes init --name "My Awesome Project"

# Update the project name later
devnotes set-project-name "New Project Name"

# Update settings with latest improvements
devnotes update

# Initialize a new project with a specific name
devnotes init --name "My Awesome Project"

Task Management

# Add a new task interactively
devnotes task-add-interactive

# List all tasks
devnotes task-list

# Edit an existing task
devnotes task-edit

# Mark a task as done
devnotes task-done 001

Code Analysis

# Scan the project
devnotes scan

Task Extraction from Code Comments

You can define tasks directly in your code using special comment tags:

# Simple task
#TASK: Implement error handling

# Task with tags
#TASK(bug,high-priority): Fix memory leak in this function

# Task with metadata
#TASK(feature)[due:2023-12-31][priority:high][status:in_progress]: Add new feature
# DESCRIPTION: This is a detailed description of the task
# It can span multiple lines as long as each line starts with #

When you run devnotes scan, these comments will be automatically converted to tasks in your project.

Supported metadata fields:

  • due: Due date for the task (e.g., 2023-12-31)
  • priority: Priority level (e.g., high, medium, low)
  • status: Current status (e.g., todo, in_progress, done)

You can also add a multi-line description by adding comment lines starting with # DESCRIPTION: followed by additional comment lines.

Diagrams

# Generate a task diagram
devnotes diagram tasks

# Generate a call graph
devnotes diagram callgraph

# Generate a hierarchy diagram
devnotes diagram hierarchy

# Generate a diagram and render it
devnotes diagram tasks --render

# Generate a diagram, render it and open it in the browser
devnotes diagram callgraph --open

# Render a Mermaid diagram to SVG
devnotes render --path .project/call_graph.mmd

Configuration

Settings are stored in .project/settings.yaml. You can update the settings with:

devnotes update

Configuration Options

The settings.yaml file supports the following configuration options:

# Task status options
statuses: ["todo", "in_progress", "done", "blocked"]
default_status: "todo"
default_tags: []

# Diagram settings
diagram:
  output: "project_structure.mmd"
  style: "graph TD"

# Scan settings
scan:
  exclude: [".project", ".venv"]
  exclude_stdlib_calls: true

Status Colors

You can customize the colors for each status by adding a status_colors section:

status_colors:
  todo: "yellow"
  in_progress: "cyan"
  done: "green"
  blocked: "red"

Trello Integration

DevNotes supports synchronizing tasks with Trello:

# Configure Trello integration (interactive mode)
devnotes trello setup

# Quick setup with automatic list mapping
devnotes trello setup --quick

# Create a new Trello board with appropriate lists and custom fields and custom fields
devnotes trello create-board

# Sync tasks bidirectionally (both to and from Trello)
devnotes trello sync

# Sync only from local to Trello
devnotes trello sync --direction=to

# Sync only from Trello to local
devnotes trello sync --direction=from

# View integration status
devnotes trello status

To use this feature, you need to:

  1. Obtain an API key and token from Trello (https://trello.com/app-key)
  2. Choose one of the following configuration methods:
    • Method 1 (recommended for new users): Run devnotes trello create-board to create a new Trello board with all the necessary lists already correctly configured
    • Method 2: Run devnotes trello setup --quick for quick setup with automatic mapping of existing lists
    • Method 3: Run devnotes trello setup for detailed manual configuration
  3. Follow the on-screen instructions

Custom Fields

When you create a new board with devnotes trello create-board, the following custom fields are automatically created:

  • Project: Shows the project name (set during initialization with devnotes init)
  • File: Shows the file path where the task is located
  • Function/Class: Shows the function or class name related to the task
  • ID DevNotes: Shows the DevNotes task ID for easy reference

These custom fields make it easier to identify and organize tasks in Trello, especially when you're using a single board for multiple projects.

Custom Fields

When you create a new board with devnotes trello create-board, the following custom fields are automatically created:

  • Project: Shows the project name (set during initialization with devnotes init)
  • File: Shows the file path where the task is located
  • Function/Class: Shows the function or class name related to the task
  • ID DevNotes: Shows the DevNotes task ID for easy reference

These custom fields make it easier to identify and organize tasks in Trello, especially when you're using a single board for multiple projects.

The quick setup mode (--quick) attempts to automatically map Trello lists to task statuses based on common names (e.g., "To Do" → "todo", "In Progress" → "in_progress", etc.). If it can't find a match, it will ask you to manually select the appropriate list.

The create-board command is the easiest way to get started, as it automatically creates a new Trello board with all the necessary lists and custom fields already correctly configured for DevNotes.

Requirements

  • Python 3.8+
  • Mermaid CLI (optional, for diagram rendering)

License

MIT

Metadata

Release files for devnotes 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for devnotes 0.1.4
File Size Uploaded Provenance Actions
devnotes-0.1.4.tar.gz 37.0 kB Without provenance Details for devnotes-0.1.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for devnotes 0.1.4
File Interpreter ABI Platform Actions
devnotes-0.1.4-py3-none-any.whl Python 3 none any Details for devnotes-0.1.4-py3-none-any.whl

Total release size: 63.3 kB

Release files / devnotes-0.1.4.tar.gz

Download URL devnotes-0.1.4.tar.gz
Size 37.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c8a4e60f918421582e0ca1346d8e8b73ec347c26f65b0de80fd7bdb7a0028890
BLAKE2b-256 checksum
How to use checksums
1961bfb3628dd7bb612c79fc094e23944f348c201ad07fd9cc475e70cfafd972
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9+

Release files / devnotes-0.1.4-py3-none-any.whl

Download URL devnotes-0.1.4-py3-none-any.whl
Size 26.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3141ccd9dc7e803010a070126aade95b9267e77101b2a7fd614d3fad8fcd9a15
BLAKE2b-256 checksum
How to use checksums
17d419a6b4b4afcd5c53902cccfe5e08e5b7c6d2bbc97a259c9b26edc92491d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9+

Security for devnotes 0.1.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page