Skip to content

Latest commit

 

History

History
171 lines (134 loc) · 6.3 KB

File metadata and controls

171 lines (134 loc) · 6.3 KB

Documentation Index

Welcome to the markitdown-rs documentation! Here's a comprehensive guide to all available resources.

📖 Core Documentation

Start here! Quick overview, installation, and basic usage examples for both CLI and Rust API.

Complete reference of 40+ supported formats including:

  • Detailed capabilities for each format
  • Known limitations and accuracy notes
  • Format categories (Documents, Spreadsheets, Ebooks, Archives, etc.)

Deep dive into how markitdown-rs works:

  • Core data model and architecture
  • Converter pattern and how to implement
  • Complete examples for simple and complex converters
  • Multi-page format handling
  • Performance considerations
  • Full step-by-step guide to adding new formats

Comprehensive testing guide:

  • How to run tests (all, specific formats, with debugging)
  • Test statistics (198+ passing tests)
  • Writing tests for new formats
  • Best practices and common issues
  • Coverage reporting

Quick reference matrix showing:

  • All converters and their extensions
  • Which test file covers each format
  • Overall test statistics

Guidelines for contributing:

  • Setting up development environment
  • Workflow for reporting bugs and requesting features
  • Step-by-step guide for adding formats
  • Code style and testing requirements
  • Common issues and troubleshooting

🚀 Quick Starts

For Users

  1. Install
  2. Use CLI or Rust API
  3. Check FORMATS.md for format support

For Developers

  1. Setup
  2. Understand Architecture
  3. Look at Examples
  4. Write Tests
  5. Submit PR

For Format Implementers

  1. Read Architecture Guide
  2. Follow the Checklist
  3. Write Tests
  4. Update Documentation

📊 Reference Tables

Format Support

See FORMAT_COVERAGE.md for complete matrix of:

  • 40+ formats with converter names
  • Supported file extensions
  • Test file locations
  • Implementation status

Test Summary

Category Count
Total Tests 198
Ignored Tests 3 ⚠️
Format Categories 31
Formats Supported 40+

See TESTING.md for full breakdown.

🔍 Finding What You Need

I want to...

📂 File Organization

markitdown-rs/
├── README.md              # Main entry point
├── CONTRIBUTING.md        # Contribution guidelines
├── Cargo.toml            # Project manifest
├── src/
│   ├── lib.rs            # Main library interface
│   ├── model.rs          # Core data types
│   ├── error.rs          # Error types
│   └── <format>.rs       # One converter per format (40+ files)
├── tests/
│   ├── <format>.rs       # Tests for each format (31 test files)
│   └── test_documents/   # Test fixtures organized by format
├── docs/
│   ├── FORMATS.md              # Format reference (this file)
│   ├── ARCHITECTURE.md         # Architecture & development guide
│   ├── TESTING.md              # Testing guide
│   ├── FORMAT_COVERAGE.md      # Converter matrix
│   └── README.md               # Documentation index (this file)
└── benches/
    └── conversion.rs           # Benchmarks

🔗 External Resources

❓ Frequently Asked Questions

Q: What's the easiest way to get started? A: Start with README.md for your use case (CLI or API).

Q: How do I add support for a new format? A: Follow the step-by-step guide in ARCHITECTURE.md.

Q: Where do I find test examples? A: See TESTING.md - Test File Template.

Q: Is the library production-ready? A: Yes! All 198 tests pass. See TESTING.md.

Q: What if my format isn't supported? A: Check FORMATS.md first. If not listed, request it.

Q: How do I report a bug? A: Follow CONTRIBUTING.md - Reporting Bugs.

📈 Project Statistics

  • 40+ Formats supported
  • 198 Tests passing
  • 3 Ignored tests (edge cases)
  • 31 Categories of formats
  • Async-first design with Tokio
  • Production-ready code

📝 Latest Updates

See CHANGELOG.md for recent changes and releases.


Need help? Open an issue or discussion!

Want to contribute? Start with CONTRIBUTING.md!