EeePub is a Ruby ePub generator
Ruby
Pull request Compare This branch is 21 commits behind jugyo:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
lib
spec
.gitignore
Gemfile
LICENSE
README.md
Rakefile
eeepub.gemspec

README.md

EeePub

EeePub is a Ruby ePub generator.

Usage

epub = EeePub.make do
  title       'sample'
  creator     'jugyo'
  publisher   'jugyo.org'
  date        '2010-05-06'
  identifier  'http://example.com/book/foo', :scheme => 'URL'
  uid         'http://example.com/book/foo'

  files ['/path/to/foo.html', '/path/to/bar.html'] # or files [{'/path/to/foo.html' => 'dest/dir'}, {'/path/to/bar.html' => 'dest/dir'}]
  nav [
    {:label => '1. foo', :content => 'foo.html', :nav => [
      {:label => '1.1 foo-1', :content => 'foo.html#foo-1'}
    ]},
    {:label => '1. bar', :content => 'bar.html'}
  ]
end
epub.save('sample.epub')

Low Level API

Create NCX:

EeePub::NCX.new(
  :uid => 'xxxx',
  :title => 'sample',
  :nav => [
    {:label => '1. foo', :content => 'foo.html'},
    {:label => '2. bar', :content => 'bar.html'}
  ]
).save(File.join('sample', 'toc.ncx'))

Create OPF:

EeePub::OPF.new(
  :title => 'sample',
  :identifier => {:value => '0-0000000-0-0', :scheme => 'ISBN'},
  :manifest => ['foo.html', 'bar.html'],
  :ncx => 'toc.ncx'
).save(File.join('sample', 'content.opf'))

Create OCF and ePub file:

EeePub::OCF.new(
  :dir => 'sample',
  :container => 'content.opf'
).save('sample.epub')

Install

gem install eeepub

Requirements

  • builder
  • eBook Reader :)

Links

Copyright

Copyright (c) 2010 jugyo. See LICENSE for details.