Skip to content
This repository has been archived by the owner on Dec 28, 2017. It is now read-only.
/ epub_validator Public archive

[INACTIVE] Ruby GEM for validating EPUB ebooks, using epubcheck

License

Notifications You must be signed in to change notification settings

mrcook/epub_validator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

[INACTIVE] epubValidator

Check if your EPUB eBooks are valid

Later releases of epubCheck are much more friendly to use, which means the usefulness of this GEM has diminished and so is no longer maintained. I recommend you now use the official epubCheck tool.

====

This library will check that your .epub files are valid IDPF EPUB documents (version 2.x and 3.0) and return a successful or error message. It can be called as a Ruby library, or invoked from the command line.

For more about the IDPF see http://idpf.org

For more about the epubcheck tool see http://code.google.com/p/epubcheck/

Setup

gem install epub_validator

Basic Usage

Sample usage and output:

require 'epub_validator'

epub = EpubValidator.check('/path/to/sample.epub')

puts "Invalid!" unless epub.valid?
epub.messages.each do |m|
  puts m
end
=> Invalid!
=> ERROR: OPS/toc.ncx(21): 'OPS/': referenced resource exists, but not declared in the OPF file

Now from the command line:

$ epub_validator /path/to/sample.epub

Checking....FAILED!

This is not a valid EPUB 3.0 ebook.

ERROR: OPS/toc.ncx(21): 'OPS/': referenced resource exists, but not declared in the OPF file

Requirements

Java must be installed and set in your PATH.

Future Features

  • Command line: accept directory containing many .epub files for processing.
  • Command line: have switch for writing results to log file
  • Format "ERROR" and "WARNING" output for more intuitive instructions.

About

[INACTIVE] Ruby GEM for validating EPUB ebooks, using epubcheck

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages