92 lines
2 KiB
Markdown
92 lines
2 KiB
Markdown
|
|
# MarkiTect Project Dependencies
|
||
|
|
|
||
|
|
## Overview
|
||
|
|
This document lists all project dependencies for the MarkiTect project.
|
||
|
|
|
||
|
|
## Production Dependencies
|
||
|
|
These are required for running the application:
|
||
|
|
|
||
|
|
- **markdown-it-py** - Markdown parsing library
|
||
|
|
- **PyYAML** - YAML file processing
|
||
|
|
- **click>=8.0.0** - Command-line interface framework
|
||
|
|
- **tabulate>=0.9.0** - Table formatting for output
|
||
|
|
- **jsonpath-ng>=1.5.0** - JSONPath query support
|
||
|
|
- **aiohttp>=3.8.0** - Async HTTP client/server
|
||
|
|
- **toml** - TOML file parsing (for frontmatter support)
|
||
|
|
|
||
|
|
## Development Dependencies
|
||
|
|
These are required for development, testing, and code quality:
|
||
|
|
|
||
|
|
- **pytest** - Testing framework
|
||
|
|
- **pytest-cov** - Test coverage reporting
|
||
|
|
- **black** - Code formatting
|
||
|
|
- **flake8** - Code linting
|
||
|
|
- **mypy** - Type checking
|
||
|
|
|
||
|
|
## Test Dependencies
|
||
|
|
Additional dependencies for testing (from tests/requirements-test.txt if present):
|
||
|
|
- See `tests/requirements-test.txt` for any additional test-specific dependencies
|
||
|
|
|
||
|
|
## Installation
|
||
|
|
|
||
|
|
### Quick Setup
|
||
|
|
```bash
|
||
|
|
# Install production dependencies only
|
||
|
|
pip install -e .
|
||
|
|
|
||
|
|
# Install with development dependencies
|
||
|
|
make dev
|
||
|
|
```
|
||
|
|
|
||
|
|
### Manual Installation
|
||
|
|
```bash
|
||
|
|
# Production dependencies
|
||
|
|
pip install markdown-it-py PyYAML click>=8.0.0 tabulate>=0.9.0 jsonpath-ng>=1.5.0 aiohttp>=3.8.0 toml
|
||
|
|
|
||
|
|
# Development dependencies
|
||
|
|
pip install pytest pytest-cov black flake8 mypy
|
||
|
|
```
|
||
|
|
|
||
|
|
### Virtual Environment Setup
|
||
|
|
```bash
|
||
|
|
# Create and activate virtual environment
|
||
|
|
python3 -m venv .venv
|
||
|
|
source .venv/bin/activate
|
||
|
|
|
||
|
|
# Install dependencies
|
||
|
|
make dev
|
||
|
|
```
|
||
|
|
|
||
|
|
## Running Tests
|
||
|
|
After installing dependencies:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Run all tests
|
||
|
|
make test
|
||
|
|
|
||
|
|
# Run tests with coverage
|
||
|
|
pytest --cov
|
||
|
|
|
||
|
|
# Run specific test layers
|
||
|
|
make test-foundation
|
||
|
|
make test-infrastructure
|
||
|
|
make test-integration
|
||
|
|
```
|
||
|
|
|
||
|
|
## Code Quality Tools
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Format code
|
||
|
|
make format
|
||
|
|
|
||
|
|
# Run linting
|
||
|
|
make lint
|
||
|
|
|
||
|
|
# Type checking
|
||
|
|
mypy markitect/
|
||
|
|
```
|
||
|
|
|
||
|
|
## Notes
|
||
|
|
- Python 3.8+ is required
|
||
|
|
- Virtual environment (.venv) is recommended
|
||
|
|
- All dependencies are managed through pyproject.toml
|