Metadata-Version: 2.4
Name: coursemap
Version: 0.1.5
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Rust
Classifier: Topic :: Education
Classifier: Topic :: Documentation
Classifier: Topic :: Scientific/Engineering :: Visualization
Requires-Dist: pytest>=6.0 ; extra == 'dev'
Requires-Dist: pytest-cov ; extra == 'dev'
Requires-Dist: black ; extra == 'dev'
Requires-Dist: isort ; extra == 'dev'
Requires-Dist: mypy ; extra == 'dev'
Requires-Dist: pytest>=6.0 ; extra == 'test'
Requires-Dist: pytest-cov ; extra == 'test'
Provides-Extra: dev
Provides-Extra: test
License-File: LICENSE
Summary: A tool to visualize course dependencies from Quarto/Markdown documents
Keywords: quarto,markdown,course,dependency,visualization
Author-email: Kenji Sato <mail@kenjisato.jp>
Requires-Python: >=3.8
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Homepage, https://github.com/kenjisato/coursemap
Project-URL: Repository, https://github.com/kenjisato/coursemap
Project-URL: Documentation, https://github.com/kenjisato/coursemap#readme
Project-URL: Issues, https://github.com/kenjisato/coursemap/issues

# CourseMap Python Package

Python bindings for the CourseMap tool - a Rust-based course dependency visualization tool.

## Installation

```bash
pip install coursemap
```

## Usage

### Python API

```python
import coursemap

# Generate course map
coursemap.generate_course_map("./courses", "map.svg", "svg")

# Generate inline SVG for Quarto
svg_content = coursemap.generate_inline_svg("./courses")

# Check Graphviz availability
if coursemap.check_graphviz_available():
    print(coursemap.get_graphviz_info())
```

### Command Line

```bash
course-map -i courses -o map.svg -v
course-map --check-graphviz
course-map --inline -i courses
```

### Quarto Integration

```python
#| echo: false
import coursemap

# Generate and display course map
svg_content = coursemap.create_quarto_filter("../courses")
print(svg_content)
```

## Features

- Generate course dependency maps from Quarto/Markdown documents
- Support for SVG, PNG, and DOT output formats
- Inline SVG generation for Quarto documents
- Configurable styling and phases
- Graphviz integration

## License

MIT License

