Major improvements: - Add custom DocsterError type with proper exception handling - Introduce type-safe newtypes (SourceDir, OutputPath, DiagramId) - Consistent Text usage throughout, eliminating String/Text mixing - Extract LaTeX template generation into separate functions - Add resource cleanup with bracket pattern for temporary files - Improve function naming and comprehensive documentation - Extract constants for better maintainability - Remove all unused imports and fix compiler warnings The refactored code maintains identical functionality while being much more maintainable, type-safe, and following Haskell best practices. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Docster
A self-contained CLI tool that converts Markdown with Mermaid diagrams into PDF or HTML using Pandoc and Mermaid CLI.
Usage
docster -pdf path/to/file.md
docster -html path/to/file.md
Mermaid code blocks (```mermaid) will be rendered to SVG and embedded.
Requirements
- GHC + Cabal (via ghcup)
- Pandoc
- TeX Live (for PDF)
- Mermaid CLI (
npm install -g @mermaid-js/mermaid-cli
)
specific versions
source ~/.ghcup/env && ghcup install ghc 9.12.2 source ~/.ghcup/env && ghcup install cabal 3.16.0.0 source ~/.ghcup/env && ghcup install hls 2.11.0.0
Description
Languages
Haskell
99.2%
Shell
0.8%