Show HN: Asciibook – An eBook Generator for AsciiDoc

11 points by chloerei ↗ HN
Asciibook is an e-book generator tool that can convert AsciiDoc to e-books in HTML/PDF/EPUB/MOBI format.

GitBook used to be the best open source e-book generator, but they abandoned the project at the end of 2018. E-book authors either continue to use GitBook without maintenance or write their own scripts. So I came up with the idea to write a new eBook generation tool to replace GitBook.

Homepage: https://asciibook.org/ GitHub: https://github.com/asciibook/asciibook

Features:

- Supports generation of HTML/PDF/EPUB/MOBI.

- Based on the command line, distributed via docker, works well with CI/CD.

- HTML/CSS/JavaScript based theme system.

- Support latexmath.

For demonstrate, I generated an e-book using the source code of the "Pro Git", please visit https://asciibook.org/progit2/.

This project has just been released, I will continue to optimize it. Welcome to use and provide feedback.

4 comments

[ 0.36 ms ] story [ 22.7 ms ] thread
I like your project.

The fact that Gitbook is no longer maintained is a sad news for me. I don't usually write books but I my favorite to maintain a product manuel is to use Gitbook. For example, here is a prototype for my recent project: https://xxz.jakehao.com

At a first glance Asciibook's interface is not eye appealing as Gitbook. I hope your project can keep the momentum and hope to use it in production one day!

Thank you.

GitBook's default theme is great. I think the biggest difference is that the toc is displayed on the left side and can be displayed persistently. I will improve the default theme.

Looks cool, I look forward to testing it out more.

I noticed a bug: In the sample PDF (https://github.com/asciibook/progit2/releases) the admonitions are not loading. Instead there are empty rectangles where the icons should be.

Thanks for the feedback. I found out that this is because wkhtmltopdf renders the page without waiting for the fonts to finish loading. Increasing rendering latency is a solution, and I'm looking for a better solution.