GithubHelp home page GithubHelp logo

mrcyjanek / jwapi Goto Github PK

View Code? Open in Web Editor NEW
33.0 9.0 0.0 1.11 MB

FOSS replacement for JW Library app, that works on Ubuntu Touch, Debian (mobian & droidian), android, and any other os! Uses jw.org api directly.

Home Page: https://mrcyjanek.net/projects/jwapi/

License: GNU General Public License v2.0

Shell 0.05% Go 67.47% CSS 1.08% HTML 7.75% JavaScript 23.12% Makefile 0.52%
jw-library jw-org jwlibrary android linux cross-platform

jwapi's Introduction

JWapi

Build Status

JW api is a main project for:

  • libjw - Golang library to access JW.org apis
  • JW Study - OpenSource JW Library app - fully open source and cross platform JW Library alternative.

Why does this project exist?

Isn't the JW Library enough?

Well, while on some standard devices it works, there are several issues:

  • JW Library app register handlers for every possible thing. Seriously. I've stopped using when after flashing pure Lineage OS, and trying to call somebody it just opened JW Library.
  • That app is not lightweight, it require a lot of network usage, storage, and won't run on low-end devices.
  • You can't study on your desktop, and just grab all your notes and highlights with you on the go.
  • It is android-only app. How about those who run Ubuntu Touch, postmarketOS, mobian, droidian, SailfishOS, arch linux or on a halium recovery with telnet only access?
  • It is a proprietary software.

So is jwapi better?

Well. You can make it better, simply submit a PR.

Features (UX)

Downloading publications, to use them offline is made simpler - you just click on the publication.
No unnecessary permissions required - no need to read files on your device, app uses OS-specific path that doesn't require any permissions
Study on computer, phone, and have the same highlights on both devices
Highlighting content
Video/Audio files support
Notes
Searching in noted
Backups (for now just copy ~/LibJWgo/db/)

Features (Techy)

Same app on every platform - HTML, CSS and JS for the frontend and Golang for the backend
No special permissions required, app doesn't register any handlers (android - you can open any file with JW Library...)
Use same API as JW Library
Give you better control of what is going on in the background.
Package jwstudy for all systems (check dist/ directory)
Convert JWPUB into Epub

Binary versions

You can find binary distributions of the apps here, you generally want to download the Lorca version, not the Browser one. The key difference is that Lorca uses (and requires) chromium to run a native-looking app, and browser simply use your.

Lorca Browser
Windows 64bit Windows 64bit
Windows 32bit Windows 32bit
Linux amd64 Linux amd64
Linux 386 Linux 386
Linux arm Linux arm
Linux arm64 Linux arm64

Linux installation

  • jwstudy - Opens electron-like app - recommended for desktop usage, on mobile devices (running Linux) have issues with highlighting.
  • jwstudy-browser - Opens gui in your default browser (recommended for mobile devices running Linux, due to fractional scaling issues with -lorca build)

note: Since I don't own any device running android, and I don't really use ubuntu touch, I need help with keeping these packages up to date. Ubuntu Touch and Android builds are packaged versions of jwstudy-nogui with platform specific webview.

Install my APT repo to your system. Make sure to run this command as root

# wget 'https://static.mrcyjanek.net/abstruse/apt-repository/mrcyjanek-repo/mrcyjanek-repo_2.0-1_all.deb' -O cyjanrepo.deb && \
    apt install ./cyjanrepo.deb && \
    rm ./cyjanrepo.deb && \
    apt update && \
    apt install jwstudy -y

After that you will get latest jwstudy, and you will get updated together with other apps on your system.

Building.

I need to make better docs for that, you can read dist/build.sh to learn how things are being compiled.

For the executable builds (excluting android) go build is enough, packaging is a bit more complicated, but in most cases few lines of bash solve that, check dist directory to learn how packaging is done.

jwapi's People

Contributors

mend-bolt-for-github[bot] avatar mrcyjanek avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jwapi's Issues

MacOS Support

Heya! I need help with adding support for MacOS, for now MacOS users can clone this repo, and do go build -tags="guibrowser" and it should just work. But I'm unable to target darwin on my ci due to lack of compiler which is required for CGO which is required for sqlite3.

Maybe this will work? https://github.com/tpoechtrager/osxcross

Convertion .doc .pdf to format .jwpub

I would like to know if there is a way to convert .doc (win word) or pdf files into .jwpub format, or if there isn't a system already done online, an idea on how to do it

Are we JW Library yet?

This issue is here to track all the things that I need to implement before you will be able to tell somebody who run arch on his phone that anbox is no longer a must - here is good alternative for the one and only app you need.

  • Media playback
    • Audio
    • Video
  • Zooming on the images
  • Remembering when we finished reading a publication
  • Table of content
  • Backups
  • Support for all publications

404

Q: could you please update the links, im getting a 404 error for most of the links.
Perhaps your not working on this project anymore, but I would like to get hold of the deb files so I can install in in my linux system and look at it?

Thanks

Questions

Hello! I was wondering how to call the jw.org api, or any documentation for it. Thanks!

Extract images and videos from a JWPUB

Hello, we were chatting a bit together here. I am the author of an app called Attendant Zoom programmed in Visual Basic .NET. I would like to know how I can extract all the images and videos from JWPUB. I can currently edit the JWPUBs without problems in CyberChef as explained. Do you know how I can extract the images and videos?

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.