[sword-devel] CORS API

Stephan info at tetzels.de
Sun Jun 25 16:48:27 MST 2017

Hi Troy,

I'm not talking about indexedDB. CORS enabled is necessary to be able to
download the module files from a client computer. This has nothing to do
with indexedDB. My plans are not to store the whole module in a database
but directly access the binary files like the sword library does. That's
why I've started sword.js (https://github.com/zefanja/swordjs) some
years ago. There is still a lot of work do be done, but it works for
most of the modules (although it would be very helpful, if there is some
kind of documentation about the internal way how the data is stored in
modules, so I don't have to rely on trial and error...)

So, I have no plans to store any of the modules content in an indexedDB.
I just want to be able download the modules directly from a clients
browser without having to rely on a (CORS enabled) server in the middle
that handles the request.


Am 26.06.2017 um 03:20 schrieb Troy A. Griffitts:
> Hi Stephan,
> We have another new sword-devel subscriber interested in web development
> and I wanted to ping your email so he could read through the quoted
> thread. I want to support your ideas but am skeptical right now about
> supporting format shifting to indexeddb. Mostly because I'm not sure
> what can of worms that might open up for dealing with publishers. Also
> technically, I've always had trouble storing anything sizeable into an
> indexeddb store.
> Troy
> On June 25, 2017 9:33:04 AM GMT+02:00, Stephan <info at tetzels.de> wrote:
>     Hi,
>     this is an old thread, but I like to second that. It would be really
>     nice if CORS could be enabled for everything under
>     http://www.crosswire.org/ftpmirror/pub/sword/
>     Currently this is one of the main obstacles to write a modern
>     offline-first (progressive) webapp.
>     Are there any specific reasons why CORS can't be enabled for the module
>     repositories?
>     Thanks
>     Stephan
>     Am 28.12.2016 um 15:59 schrieb Simon Biggs:
>         I want to be able to make a progressive web app using Angular. I
>         want it
>         to be able to download the resources from crosswire and store
>         them with
>         IndexedDB. The advantage of this is nothing needs to be
>         installed on the
>         users machine, everything I write immediately works on every
>         operating
>         system. And because of IndexedDB all Bible resources can be accessed
>         offline. Because of the progressive webapp infrastructure the
>         website
>         itself will also be able to be accessed offline.
>         If I was to place a server between the webapp and the user the user
>         would not be able to download the resources offline. That would
>         surmount
>         to redistribution by myself. However, if the client webapp directly
>         downloads from crosswire via a REST API then that fulfills your
>         distribution agreements.
>         ---------- Forwarded message ----------
>         From: "Troy A. Griffitts" <scribe at crosswire.org
>         <mailto:scribe at crosswire.org>>
>         To: "SWORD Developers' Collaboration Forum"
>         <sword-devel at crosswire.org <mailto:sword-devel at crosswire.org>>
>         Cc:
>         Date: Tue, 27 Dec 2016 11:47:43 -0700
>         Subject: Re: [sword-devel] CORS API
>         Hi Simon,
>         Thanks for your ideas. I'm interested to hear a little about the
>         use cases you are targeting. Are you trying to server offline
>         browser users in general, or do you have a specific case you have in
>         mind?
>         The background here is that we typically don't encourage
>         transferring data from our format to another. Though we've
>         accumulated a large library of works and that, in itself, is useful
>         to other engineer, we don't curate any of these individual modules
>         and simply have done the work to track down each authoritative
>         source, get permission for distribution and use as openly as can be
>         obtained from their curator, and then to convert their primary data
>         source into our module format. This doesn't pass along any rights
>         for use to other projects outside those of CrossWire, and also
>         doesn't provide a primary source for any of this material-- which an
>         lead to multiplied data conversion issues when moving on to a second
>         jump from the primary source.
>         We have a C++ engine which runs on most any device you might wish to
>         support (including web server)-- with many bindings for most popular
>         scripting languages, and also a native Java engine as well. Both of
>         these can be used to discover, install, and access our entire
>         library, if you'd like to start a new application in our community
>         or contribute to an existing solution.
>         Two web applications which use our engines and might interest
>         you are:
>         http://crosswire.org/study
>         http://stepbible.org
>         Hope this helps. Welcome! Looking forward to sharing in service
>         together,
>         Troy
>     ------------------------------------------------------------------------
>     sword-devel mailing list: sword-devel at crosswire.org
>     http://www.crosswire.org/mailman/listinfo/sword-devel
>     Instructions to unsubscribe/change your settings at above page
> -- 
> Sent from my Android device with K-9 Mail. Please excuse my brevity.

More information about the sword-devel mailing list