Hey everyone đź‘‹
I’m Sam — a solo builder who spends way too much time writing long-form content: guides, frameworks, SOPs, ebooks…
And weirdly, the writing was never the hard part.
The hard part was turning that content into something clean, structured, and publishable without spending hours in Google Docs, Notion, or—worse—InDesign.
So I built EbookForge:
👉 a fast, deterministic JSON → PDF Ebook engine for developers and creators. Website: EbookForge
The Problem
If you write long-form content, you probably know the pain:
- Fighting with margins and spacing
- Random line breaks
- Tables that jump around
- PDFs that look different every time you export
- Manual formatting that kills your flow
- Templates that solve nothing
I always thought “why isn’t there a simple, deterministic way to generate a clean ebook from structured content?”
There wasn’t. So I built one.
What EbookForge does
EbookForge takes a strict JSON schema and turns it into a clean, professional PDF ebook.
It supports:
- Titles / subtitles
- Headings
- Paragraphs
- Lists
- Page layout rules
- Consistent typography
- Automatic spacing
*No WYSIWYG. No template hell. Just structure → output. *
Why JSON?
Because:
- t’s predictable
- It’s scriptable
- It’s versionable
- It works with LLMs
- It integrates with any backend
- Developers already understand it
If you’ve ever built internal docs, tutorials, online courses, ebooks, or technical PDFs… JSON is the perfect middle layer.
Who this is for
- Developers generating PDFs programmatically
- SaaS founders shipping guides or documentation
- Indie hackers building content products
- Writers who want full control over structure
- Anyone automating content workflows
I built EbookForge for myself first, but I realized others might find it useful too.
Try it
It’s live here EbookForge
You paste a JSON example, hit “Generate”, and get a clean PDF instantly.
Still early, still improving — feedback is super welcome.
Feedback appreciated
If you’ve ever struggled with PDF/ebook generation, I’d love to know:
- What formats do you use?
- What pain points do you hit the most?
- What features would make this 10Ă— more useful?
Happy to share code snippets or JSON examples too.
Thanks for reading! 🙌
Sam

Top comments (0)