DocForge API v1.0.0
Initial release of DocForge - a PDF generation service using Handlebars templates.
Features
- Template Management - Create, update, and delete Handlebars templates with syntax validation
- Document Generation - Generate PDFs from templates with dynamic data via PuppeteerSharp
- Batch Generation - Generate multiple documents in a single request with transactional rollback
- Visual Template Builder - React-based drag-and-drop editor with free-form canvas positioning
- User Authentication - JWT-based auth with refresh tokens, account lockout, and password policies
- Pagination - Paginated results for templates and documents
- Rate Limiting - Request throttling to prevent abuse
- Health Checks - Container-ready health endpoint for orchestration
- TUI Interface - Cross-platform terminal UI for local development
- Docker Support - Containerized deployment with nginx reverse proxy
Security
- Account lockout after 5 failed login attempts (15-minute duration)
- Strong password requirements (8+ chars, uppercase, lowercase, digit, special char)
- Path traversal protection on document downloads
- Security headers (CSP, X-Content-Type-Options, etc.)
- User isolation - documents and templates scoped to authenticated user
Developer Experience
- Swagger/OpenAPI documentation
- GitHub Actions CI with coverage reporting
- Codecov integration (52% coverage, 101 tests)
- Pre-commit hooks via Husky
- Cross-platform CLI scripts
Tech Stack
- .NET 8 with Clean Architecture
- Entity Framework Core 9 (SQLite)
- PuppeteerSharp for PDF rendering
- React 19 + Vite frontend
- FluentValidation + AutoMapper