Publish your book – for free
With CrowdBooks you take your book from the first chapter all the way to the bookshop. You write, CrowdBooks shows your reading sample and creates PDF and EPUB, and services like epubli, Amazon or tolino turn it into a printed book and an e-book. Everything is free, and all rights stay with you.
0. What CrowdBooks is – and what it isn't
- Free: no fees, no contract, no transfer of rights. Your text lives in your own repository and belongs to you.
- A reading sample instead of a paywall: you upload the whole book. Readers see the first chapters; whoever wants to read the whole book or give it as a gift buys it through your links.
- Not a publisher in the legal sense: CrowdBooks does not assign ISBNs and does not sell anything. It prepares everything so that you can publish yourself – you are your own publisher.
1. Writing in Markdown
Every chapter is a simple text file ending in .md. A few characters are enough:
| You write | You get |
|---|---|
## A section | Sub-heading |
*italic* and **bold** | italic and bold |
> A quotation | indented quotation |
- item or 1. step | list |
| A | B | (with a separator line |---|---|) | table |
 | image |
--- | divider |
Do not write the chapter title into the file – CrowdBooks adds it itself, from the title you enter for the chapter. Start directly with the text, otherwise the heading appears twice. Put images into the repository, for example in a folder images/ next to the chapters; the path in the chapter is relative to the chapter file.
An empty line starts a new paragraph. CrowdBooks does not display footnotes ([^1]); write sources as numbered "Notes" at the end of the chapter instead.
2. A repository for your book
- Create a free account on codeberg.org (or github.com).
- Create a new public repository – one per book, for example
my-first-book. - Upload your chapters, with one folder per language. Use lower case and hyphens instead of spaces:
my-first-book/
cover.jpg
en/
00-preface.md
01-the-beginning.md
02-the-journey.md
de/
00-vorwort.md
01-der-anfang.md
You can upload and edit files right in the browser. Every change shows up on CrowdBooks within a few minutes.
3. Create the book and its chapters
- Log in to CrowdBooks and click "New Book".
- Choose "Closed Book" (only you write) and enter title, description, author name and the repo URL. A pen name is explicitly welcome.
- Under "Edit", upload your cover (portrait format, for example 1280 × 1920 pixels).
- Select the book in the dashboard and add each chapter with "New Chapter": title and file path, for example
en/01-the-beginning.md. "Load preview" shows you right away how it looks. - Click "Publish" on each chapter and finally "Submit book" on the book.
Add the chapters in reading order – preface first, then chapter 1, 2, 3 … This order is used for previous/next, the reading sample and the export.
4. Reading sample and buy links
- Open "Edit" on your book.
- Under "Reading sample: the first chapters", enter how many chapters should be public, for example
4for preface and chapters 1–3.0means the whole book can be read freely. - Under "Buy links", enter where the book is available – one link per line:
epubli | https://www.epubli.com/shop/…
Amazon | https://www.amazon.com/dp/…
June Market | https://crowdware.info/markt/…
Readers then see the full table of contents, the remaining chapters with 🔒, and your buy links at the end of the sample. You yourself always see all chapters.
5. Create PDF and EPUB
- In the dashboard, click "Export" on your book.
- PDF for print: choose the format (for example 12 × 19 cm or A5) and download the PDF. This is your book interior, with title page, table of contents, chapters starting on right-hand pages and page numbers. The export always contains all chapters, including those outside the reading sample.
- PDF as a sample to send out: tick "With cover" – the PDF then starts with your cover. Leave it unticked for the print interior.
- EPUB for e-book shops: click "Download EPUB". The cover is included automatically.
6. Get your book into the shops
With PDF and EPUB you can register your book with self-publishing services. They print on demand (no stock, no minimum print run) and deliver to bookshops and online stores:
- epubli – paperback and e-book, distribution to bookshops and major online stores.
- Amazon KDP – paperback and Kindle e-book. KDP's free ISBN can only be used for printing through KDP.
- tolino media – e-books for the tolino shops (mainly in German-speaking countries).
What CrowdBooks does not (yet) provide and you create there yourself:
- the paperback cover with spine and back – its width depends on the page count; the services offer templates or a cover editor,
- the imprint page with your name or pen name and a contact address, as required by the service,
- the ISBN – assigned by the services, free of charge at epubli and KDP.
Terms, prices and royalties change. As of October 2026 – please check the current conditions directly with the provider.
7. Close the circle
- As soon as your book is in the shops, add the links under "Buy links" (step 4).
- Share your reading sample – at the bottom of every page there are buttons for WhatsApp, Telegram, Facebook, X, Bluesky, email and copying the link.
- You can also offer your book on the June Market, for example as an e-book for Ğ1.
8. Several languages
Create a separate book on CrowdBooks for each language – with its own title, its own cover and the chapters from the matching language folder. That way every reader finds the book in their language.
An example: "The Solution to the Blockage is the Solution" is available as a reading sample in English, German, French and Spanish.
9. Writing a book with Claude – and uploading it with one command
You can write your book together with an AI such as Claude: Claude drafts and revises the chapters as Markdown files in your repository, you read, correct and decide. So that Claude (or a script of your own) can also bring the finished book to CrowdBooks, there is an API. One call creates the whole book or brings it up to date.
There is a complete plain-text guide just for Claude: /guide/api.md. On the "API access" page you find ready-made instructions you only need to give to Claude.
- Create a token in the dashboard under "API access". It is shown only once – give it to Claude as an environment variable, for example
CROWDBOOKS_TOKEN, and never put it into your repository. - Add a file
Book.smlto the repository that describes your book:Book { title: "My Book" description: "What it is about" author: "Jane Doe" type: "closed" tag: "non-fiction" cover: "https://codeberg.org/name/repo/raw/branch/main/cover.jpg" sample: 4 Buy { name: "epubli" url: "https://www.epubli.com/shop/…" } Chapter { title: "Preface" url: "https://codeberg.org/name/repo/raw/branch/main/en/00-preface.md" } Chapter { title: "Chapter 1: The Beginning" url: "https://codeberg.org/name/repo/raw/branch/main/en/01-the-beginning.md" } } - Upload the book:
The answer is SML again: thecurl -X POST https://crowdbooks.crowdware.info/api/v1/books \ -H "Authorization: Bearer $CROWDBOOKS_TOKEN" \ --data-binary @Book.smlslugandurlof your book, every chapter with itsstatus(createdorupdated) and any notes (Warning). - Put the
slugfrom the answer at the top of yourBook.sml(slug: "my-book-1a2b3c"). From then on every call updates this book instead of creating a new one.
What the fields mean:
title– required.slug– without it a new book is created.description,author,tag,sample(chapters in the reading sample, 0 = everything free) andBuyentries – if they are missing in an update, the old value stays.type–"closed"(default) or"open"; only used when the book is created.cover– link to a PNG, JPEG or WebP image up to 5 MB; it is downloaded and stored as the cover.Chapter–titleandurl(http, https or ipfs) are required. The order in the file is the reading order. A chapter is recognised by its URL: same URL = same chapter, a new title and new text are taken over.
Chapters that are already on CrowdBooks but no longer in Book.sml are not deleted but move behind the listed chapters – the answer points them out. You can delete them in the dashboard.
