Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/greatwizard/reliure
Bind your books for e-readers.
https://github.com/greatwizard/reliure
bind binding book bookbind bookbinding docx ebook ebooks epub hacktoberfest kindle kindlegen latex markdown mobi odt pandoc pdf pdf-generation reliure
Last synced: 3 months ago
JSON representation
Bind your books for e-readers.
- Host: GitHub
- URL: https://github.com/greatwizard/reliure
- Owner: GreatWizard
- License: gpl-3.0
- Created: 2020-03-01T13:58:08.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-06-28T15:29:17.000Z (7 months ago)
- Last Synced: 2024-10-09T12:51:26.400Z (4 months ago)
- Topics: bind, binding, book, bookbind, bookbinding, docx, ebook, ebooks, epub, hacktoberfest, kindle, kindlegen, latex, markdown, mobi, odt, pandoc, pdf, pdf-generation, reliure
- Language: JavaScript
- Homepage:
- Size: 2.37 MB
- Stars: 5
- Watchers: 3
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Reliure
[![Build Status](https://github.com/GreatWizard/reliure/actions/workflows/test.yml/badge.svg)](https://github.com/GreatWizard/reliure/actions?query=workflow%3Atest)
[![License: GPL-3.0](https://img.shields.io/github/license/GreatWizard/reliure)](https://github.com/GreatWizard/reliure/blob/master/LICENSE.md)
[![Liberapay](http://img.shields.io/liberapay/patrons/GreatWizard.svg?logo=liberapay)](https://liberapay.com/GreatWizard/)Bind your books for e-readers.
![Screenshot of Reliure running in a terminal](https://raw.githubusercontent.com/GreatWizard/reliure/master/reliure-screenshot.png)
## Features
- Compiles Microsoft Word DOCX, LibreOffice ODT, Markdown, LaTeX... files in epub, mobi and pdf
- Cross-platform compatibility (Windows, Mac and Linux)
- Configuration in a single file
- Validate the configuration before creating the books
- Replaces part of the configuration for a specific format
- Supports custom fonts (ttf and otf)
- Supports cover image
- Supports metadata### Features only for ebooks (epub and mobi)
- Supports custom metadata
- Supports custom CSS
- Supports automatic regexp substitutionsℹ️ KindleGen does not work on 64-bit MacOS. On this platform, you can only compile in epub.
## Prerequisites
You need to have on your computer:
- Pandoc: https://pandoc.org/installing.html
- MiKTeX: https://miktex.org/download## Installation
Then, you can download the [latest release](https://github.com/GreatWizard/reliure/releases/latest) for your computer:
- Windows: https://github.com/GreatWizard/reliure/releases/latest/download/reliure-win.exe
- MacOS: https://github.com/GreatWizard/reliure/releases/latest/download/reliure-macos
- Linux: https://github.com/GreatWizard/reliure/releases/latest/download/reliure-linux## Usage
### Configuration file
Your entry point is a configuration file named `reliure.yml`:
```yaml
# Name of the output file
filename: My Ebook# Default configuration applied to every format
default:
# Cover image of the ebook
coverImage: cover.jpg
# Deactivate the default CSS (false by default) used by epub/mobi format
ignoreDefaultStyleSheet: true/false
# Custom Style sheets appends to the default stylesheet used by epub/mobi format
styleSheets:
- style.css
# Custom fonts configuration, files must be in the same directory
fonts:
main:
name: EB Garamond # Used to define the font name
baseFilename: EBGaramond # Used to find the files
extension: .otf # Supported format are ttf and otf
# Files are defined by shapes. It work like a "mask", "*" is replaced by the base filename of the font
shapes:
upright: '*-Regular' # EBGaramond-Regular.otf
italic: '*-Italic' # EBGaramond-Italic.otf
# Files used to build the ebook
files:
- my-ebook.docx# Metadata following pandoc's options https://pandoc.org/MANUAL.html#epub-metadata
metadata:
title: Test Book
author: Guillaume Gérard
date: 2020-11
lang: fr-FR# Extra metadata
extraMetadata:
'calibre:series': My Collection
'calibre:series_index': 1# Example of substitutions for chapters, cover and title page files used by epub/mobi format
textSubstitutions:
- regex:\*{3}
replacement:***
# Example of substitutions for navigation file used by epub/mobi format
navSubstitutions:
- regex:
replacement:# Example of substitutions for the OPF file used by epub/mobi format
opfSubstitutions:
- regex: fr-FR
replacement: fr-BE# Overridden configuration for epub format
epub:
metadata:
identifier: 'urn:isbn:1234567890123'
rights: 'ISBN: 123-4-5678901-2-3'# Overridden configuration for mobi format
mobi:
coverImage: cover-mobi.jpg
metadata:
identifier: 'urn:isbn:1234567890145'
rights: 'ISBN: 123-4-5678901-4-5'# Overridden configuration for pdf format
pdf:
coverImage: ../cover-pdf.jpg
# fourth cover option is only used by pdf format
fourthCoverImage: ../fourth-cover-pdf.jpg
metadata:
identifier: 'urn:isbn:1234567890167'
rights: 'ISBN: 123-4-5678901-6-7'
# latex packages option is only used by pdf format
latexPackages:
- '[french]{babel}'
```### Commands
Usage: `reliure [options] [configuration file/directory]`
#### Options:
- `-c`, `--config`: The configuration file/directory to process
- `--epub`: Specify to bound the epub format
- `--mobi`: Specify to bound the mobi format and you accept the following terms of use: https://www.amazon.com/gp/feature.html?docId=1000599251
- `--pdf`: Specify to bound the pdf format
- `--kindlegen-path`: Specify the kindlegen location
- `--non-interactive`: Does not prompt for any input
- `-v`, `--version`: Print the version number
- `-h`, `--help`: Print usage information#### Examples:
```shell
reliure --epub --mobi
reliure --epub --pdf my-project/
reliure --epub --pdf my-complex-project/reliure-config.yml
reliure --mobi --kindlegen-path=/usr/local/bin/kindlegen my-project/reliure.yml
reliure -v
reliure --version
```