npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

reliure

v1.12.0

Published

Bind your books for e-readers.

Downloads

6

Readme

Reliure

Build Status License: GPL-3.0 Liberapay

Bind your books for e-readers.

Screenshot of Reliure running in a terminal

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 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:

# 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: <p>\*{3}</p>
      replacement: <p class="center">***</p>

  # Example of substitutions for navigation file used by epub/mobi format
  navSubstitutions:
    - regex: <!DOCTYPE html>
      replacement: <!DOCTYPE html2>

  # Example of substitutions for the OPF file used by epub/mobi format
  opfSubstitutions:
    - regex: <dc:language>fr-FR</dc:language>
      replacement: <dc:language>fr-BE</dc:language>

# 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:
    - '[frenchb]{babel}'

Commands

Usage: reliure [options] [configuration file/directory]

Options:

  • --epub: specify to bound the epub format
  • --mobi: specify to bound the mobi format
  • --pdf: specify to bound the pdf format
  • --kindlegen-path: specify the kindlegen location
  • -v, --version: print the version number
  • -h, --help: print usage information

Examples:

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