PDFSpark
Free HTML and URL to PDF conversion API
Free and open. No API keys. No authentication. No rate limits. Part of the SoftVoyagers ecosystem.
Quick Start
# Clone the repository
git clone https://github.com/softvoyagers/PDFSpark.git
cd PDFSpark
# Install dependencies
npm install
# Start development server
npm run dev
# Open in browser
open http://localhost:8080
API Reference
Base URL
https://pdfspark.dev/api/v1
Endpoints
| Method | Path | Description |
|---|---|---|
GET |
/api/v1/example |
Example GET endpoint |
POST |
/api/v1/example |
Example POST endpoint |
GET |
/health |
Health check |
Example Request
curl "https://pdfspark.dev/api/v1/example"
Example Response
{
"status": "success",
"data": {
"message": "Replace this with your API logic",
"timestamp": "2026-01-01T00:00:00.000Z"
}
}
Development
npm install # Install dependencies
npm run dev # Start dev server (nodemon + ts-node)
npm run build # Compile TypeScript
npm run start # Run compiled output
npm test # Run tests with coverage
npm run lint # TypeScript type check
Docker
# Build and run with Docker Compose
docker compose up --build
# Or build manually
docker build -t PDFSpark .
docker run -p 8080:8080 PDFSpark
Tech Stack
| Layer | Technology |
|---|---|
| Runtime | Node.js 20 (LTS) |
| Language | TypeScript (strict mode) |
| Framework | Express 5 |
| Testing | Jest + Supertest |
| Container | Multi-stage Dockerfile (node:20-alpine) |
| CI/CD | GitHub Actions |
| Hosting | Azure Web App for Containers |
| Frontend | Vanilla HTML/CSS/JS (cyberpunk theme) |
Portfolio
Part of the SoftVoyagers ecosystem:
- LinkMeta - URL metadata extraction API
- PageShot - Screenshot & webpage capture API
- MyAddress - Address autocomplete & geocoding
- PDFSpark - Free HTML and URL to PDF conversion API
- OGForge - Open Graph image generator API
- LinkShrink - Privacy-first URL shortener API
- Fakturka - Darmowy generator faktur VAT online
License
MIT