ToDoWrite Documentation
Welcome to the comprehensive documentation for ToDoWrite, a hierarchical task management system built with ToDoWrite Models.
ToDoWrite provides a sophisticated 12-layer hierarchical task management system for complex project planning and execution.
Contents:
- ToDoWrite Overview
- Quick Start Guide
- ToDoWrite Models API Reference
- todowrite package
AcceptanceCriteriaBaseCommandConceptConstraintContextDatabaseInitializationErrorDatabaseSchemaInitializerToDoWriteGoalInterfaceContractLabelPhaseRequirementSchemaValidationErrorStepSubTaskTaskToDoWriteSchemaValidatorcreate_engine()get_schema_validator()initialize_database()sessionmakervalidate_model_data()- Core Components
- ToDoWrite Models
- Core Modules
- Database Schema
Features
12-Layer Hierarchy: Goal → Concept → Context → Constraints → Requirements → AcceptanceCriteria → InterfaceContract → Phase → Step → Task → SubTask → Command
Modern SQLAlchemy Patterns: Modern SQLAlchemy ORM implementation with proper relationships
Multiple Storage Backends: SQLite, PostgreSQL, and YAML file support
CLI Interface: Full command-line interface for task management
Schema Validation: JSON schema validation and database integrity checks
Rich Relationships: Many-to-many associations through join tables
Getting Started
To start using ToDoWrite:
from todowrite import Goal, Task, initialize_database
# Initialize database
initialize_database("sqlite:///myproject.db")
# Create a goal
goal = Goal(
title="Launch Product",
description="Successfully launch the new product",
owner="product-team",
severity="high"
)
# Save to database
session.add(goal)
session.commit()