Universal document conversion and processing library that works in any JavaScript runtime, powered by Demo Macro
- Universal Format Support: Convert between various document formats seamlessly
- Cross-Platform: Works on Windows, macOS, and Linux
- Modular Architecture: Use only what you need with tree-shaking support
- Type Safety: Written in TypeScript with full type support
- High Performance: Optimized for speed and memory efficiency
- Extensible: Easy to add new format support
- CLI Support: Command-line interface for quick conversions
Docen is designed to work across all major platforms:
- Windows: Full support (x64, arm64)
- macOS: Full support (x64, arm64)
- Linux: Full support (x64, arm64)
Some features require additional setup:
- Windows: Requires Visual Studio Build Tools
- Linux: Requires
build-essential
andlibcairo2-dev
- macOS: Requires Xcode Command Line Tools
We provide Docker images for consistent environment across platforms:
docker pull docenjs/docen
For detailed platform-specific setup, see Installation Guide.
# Install the package
npm install docen
# Or with specific processors
npm install docen pdf-lib mammoth xlsx
- Introduction
- Installation Guide
- Quick Start Guide
- Core Concepts
- Processors
- CLI Usage
- API Reference
- Contributing Guide
docen/
├── packages/
│ ├── docen/ # Core package
│ │ ├── core/ # Core conversion engine
│ │ ├── processors/ # Format processors
│ │ ├── cli/ # CLI implementation
│ │ └── utils/ # Shared utilities
│ └── processors/ # Official processors
├── docs/ # Documentation
├── examples/ # Usage examples
└── tests/ # Test suites
For a detailed format conversion compatibility matrix, see Format Conversion Matrix.
- PDF (.pdf)
- Microsoft Word (.docx)
- Microsoft Excel (.xlsx)
- CSV (.csv)
- Markdown (.md)
- HTML (.html)
- Images (.png, .jpg, .gif, etc.)
- Audio (.mp3, .wav, etc.)
- Video (.mp4, .avi, etc.)
- JSON (.json)
- XML (.xml)
- YAML (.yaml)
- Basic document format support (PDF, DOCX, XLSX, CSV)
- Text extraction
- Basic conversion capabilities
- CLI implementation
- Advanced format support (Markdown, HTML)
- Media file processing
- Batch processing
- Progress tracking
- Error recovery
- Cloud storage integration
- Streaming support
- Format validation
- Custom format plugins
- Web API
We welcome contributions! Please see our Contributing Guide for details.