Git Product home page Git Product logo

bene's Introduction

Bene: An EPUB Reading System

Bene is a reading system for documents written in the EPUB file format. You can try a live demo of Bene here: https://nota-lang.github.io/bene/

Development Status: Bene is a research prototype. Don't expect it to work reliably yet.

Setup

Currently, the only supported setup is installation from source. You will need at least Rust and Depot.

Bene is distributed as a web app and a desktop app.

Web App

You will need wasm-pack. Then run:

cd bene/js
depot -p bene-web build

Then you can serve the web app by running:

cd packages/bene-web/dist
python -m http.server

And visit http://localhost:8000/. You can replace the python command with however you like to serve static files.

Desktop App

You will need the Tauri CLI, which you can install by running:

cargo install tauri-cli

Then run:

cd rs
cargo tauri build

This will generate a binary you can use on your system. I have only tested this on MacOS and it only kind of works, so I would just use the web app for now.

bene's People

Contributors

willcrichton avatar

Stargazers

Alfas Esty avatar Swastik Baranwal avatar  avatar Harry Gallagher avatar Prad Nukala avatar Andreas Pfeil avatar Auguste Baum avatar Franco A. Alvarado avatar ilana avatar Garth Kidd avatar  avatar  avatar HUI MIAO avatar keaton avatar Adam Cook avatar Markus Rauhalahti avatar Paul Pierre avatar Nick Wassermann avatar Alexander Pushkov avatar Behrooz Nobakht avatar Brendan Schlagel avatar Jonathan Schear avatar Kyle King avatar Marcel Stimberg avatar  avatar Lachlan Kermode avatar Alan Barzilay avatar Iso Lee avatar  avatar Nick Shu avatar Andrew Eick avatar Roland Dreger avatar Alexander Koenig avatar Chris Mays avatar  avatar Franco avatar Jan Seeger avatar Shu Shen avatar daviehh avatar David Arnold avatar Michael N. avatar Kiel Gillard avatar Oussama EL GHANNAMI avatar Alexandre avatar Jungledrum avatar  avatar  avatar Phill Ayers avatar Roman Heinrich avatar Ryan Eby avatar  avatar Metin Emiroğlu avatar D. Bohdan avatar Dani Hodovic avatar Liamcsail avatar Savvy Raghuvanshi avatar Tim DuBois avatar Aloe Vera avatar  avatar  avatar arnaucube avatar Dario Castañé avatar Rosano avatar Sean Braley avatar Jesse Wright avatar  avatar Marcel Guzik avatar Maxim Rebguns avatar Andrejs Agejevs avatar Julian Sy avatar James Thurley avatar Leonardo avatar Jin Yao avatar Erich Gubler avatar  avatar zuo avatar Arnau Siches avatar Thomas Lindgren avatar  avatar Liepony avatar  avatar Satyarth Sampath avatar Yang Wang  avatar  avatar TayLock avatar Masanori Ogino avatar Vinay Keerthi avatar Stephen FAURE avatar Leaf Garland avatar  avatar Dominic Dąbrowski avatar Michael Van Wickle avatar TomBen avatar Jack Arrington avatar pry avatar Nogweii avatar  avatar Ethan Clatterbaugh avatar Tony Narlock avatar Bill Buff avatar

Watchers

Michael Neumann avatar  avatar Shu Shen avatar  avatar

bene's Issues

Missing a license

Did you mean to open source this? There's no license anywhere I can see.

panicked at 'GTK may only be used from the main thread

After compiling desktop version, getting this error:

RUST_BACKTRACE=1 ./bene  ~/Downloads/portable-epubs.epub
thread 'tokio-runtime-worker' panicked at 'GTK may only be used from the main thread.', /home/aromanov/.cargo/registry/src/index.crates.io-6f17d22bba15001f/webkit2gtk-2.0.1/src/auto/uri_scheme_response.rs:26:5
stack backtrace:
   0: rust_begin_unwind
             at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/std/src/panicking.rs:593:5
   1: core::panicking::panic_fmt
             at /rustc/d5c2e9c342b358556da91d61ed4133f6f50fc0c3/library/core/src/panicking.rs:67:14
   2: core::ops::function::FnOnce::call_once{{vtable.shim}}
   3: core::ops::function::FnOnce::call_once{{vtable.shim}}
   4: bene_app::main::{{closure}}::{{closure}}::{{closure}}
   5: tokio::runtime::task::core::Core<T,S>::poll
   6: tokio::runtime::task::harness::Harness<T,S>::poll
   7: tokio::runtime::scheduler::multi_thread::worker::Context::run_task
   8: tokio::runtime::scheduler::multi_thread::worker::Context::run
   9: tokio::runtime::context::scoped::Scoped<T>::set
  10: tokio::runtime::context::runtime::enter_runtime
  11: tokio::runtime::scheduler::multi_thread::worker::run
  12: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
  13: tokio::runtime::task::harness::Harness<T,S>::poll
  14: tokio::runtime::blocking::pool::Inner::run
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Also had following problem during cargo tauri build

   Compiling tao v0.23.0
   Compiling muda v0.11.2
   Compiling specta v2.0.0-rc.7 (https://github.com/oscartbeaumont/specta?rev=673e3f55d246cd90e70c706ba4ca7f5818e99ba9#673e3f55)
   Compiling tauri-specta v2.0.0-rc.4 (https://github.com/oscartbeaumont/tauri-specta?branch=tauri2-alpha18#123e1833)
   Compiling bene-epub v0.1.0 (/home/aromanov/src/rust/bene/rs/crates/bene-epub)
    Finished release [optimized] target(s) in 1m 07s
    Bundling bene_0.0.0_amd64.deb (/home/aromanov/src/rust/bene/rs/target/release/bundle/deb/bene_0.0.0_amd64.deb)
    Bundling bene_0.0.0_amd64.AppImage (/home/aromanov/src/rust/bene/rs/target/release/bundle/appimage/bene_0.0.0_amd64.AppImage)
       Error failed to bundle project: error running appimage.sh

Not sure if it's related cause I still got binary

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.