[sword-devel] PocketSword

Fr Cyrille fr.cyrille at tiberiade.be
Sun Aug 9 13:05:53 EDT 2026


Hi Maxwell,
I'm sorry for the late reply! People don't respond very often on this 
list... Personally, I wanted to thank you for your efforts. But I wonder 
if, in the end, it wouldn't be simpler to port Andbible to iOS 
<https://github.com/AndBible/and-bible/issues/3639>—it's a known bug, 
and that would consolidate the resources into an app that's already 
extremely powerful.

Br Cyrille

Le 08/07/2026 à 07:51, Maxwell Murunga a écrit :
>
> Dear all,
>
> I am the Maxwell who wrote in briefly on January 14th suggesting a 
> Swift port of PocketSword. I want to follow up, now that I actually 
> have something concrete to show.
>
> In the months since that thread, I changed approach. Rather than a 
> Swift-only port — which would have solved the iOS problem but done 
> nothing for the broader ecosystem — I built a full Kotlin 
> Multiplatform implementation that targets Android and iOS from a 
> single codebase. The project is called *HisWord* and it is open source 
> here:
>
> *https://github.com/maxymurm/hisword*
>
> I want to be transparent about what it is and is not, and about where 
> I stand in relation to the existing community efforts.
>
> ------------------------------------------------------------------------
>
> *What it covers*
>
> HisWord is a unified platform built around two Bible engine 
> implementations:
>
> The first is the *SWORD library* (CrossWire). The project includes a 
> fully working PHP port of the SWORD engine — covering ZTextReader, 
> RawTextReader, ZComReader, RawComReader, ZLDReader, RawLD4Reader, 
> RawGenBookReader, and markup filters for OSIS, GBF, THML, TEI, and 
> plain text, plus a VersificationRegistry supporting all eight 
> versification schemas. This PHP engine has 84 passing PHPUnit tests 
> and powers a web frontend (Inertia.js + React). On the mobile side, 
> the SWORD KMP engine (Kotlin/Native on iOS, JVM on Android) was ported 
> to pure commonMain Kotlin with expect/actual wrappers for platform 
> I/O. Genesis 1 loads in under 12ms on device. Both implementations 
> give access to the full CrossWire module catalog.
>
> The second engine is *YES2/Bintex* — the proprietary compressed format 
> used in Yuku's Quick Bible / androidbible app for Android, covering 
> approximately 100 high-quality South-East Asian and Indonesian 
> translations. This engine was ported entirely from Java to pure Kotlin 
> (no JNI, no platform-specific I/O in commonMain), and includes 
> BintexReader, SnappyCodec decompressor, Yes2Reader with section index, 
> and a Yes2TextDecoder that handles all YES2 markup tags including 
> red-letter text, pericope headers, Strong's numbers, footnotes, and 
> cross-references.
>
> Both engines implement a single BibleReaderInterface. All UI, search, 
> sync, and study tools are completely engine-agnostic — the reader 
> screen has no knowledge of whether it is presenting a SWORD zText 
> module or a YES2 compressed file.
>
> ------------------------------------------------------------------------
>
> *Architecture in brief*
>
> The mobile app is Compose Multiplatform (Kotlin 2.x) with Voyager 
> navigation, SQLDelight for type-safe SQLite, Ktor for HTTP and 
> WebSocket, and Koin for dependency injection. The backend is Laravel 
> 12 with PostgreSQL, Redis, and Laravel Reverb for WebSocket 
> broadcasting. The sync layer uses a revision-vector delta protocol, 
> with last-write-wins conflict resolution and device-ID-based echo 
> prevention on the WebSocket channel.
>
> ------------------------------------------------------------------------
>
> *What is complete*
>
> Work began on March 13, 2026. As of today, across 23 commits:
>
>   * *Backend: complete*. YES2/Bintex PHP engine, SWORD PHP engine
>     (pre-existing), unified BibleReaderFactory, REST API, sync
>     controller, Reverb broadcasting, YES2 catalog, web frontend,
>     CI/CD, production deployment.
>   * *Mobile: complete*. Both binary engine readers, unified interface,
>     BibleReaderViewModel and full reader UI, navigation, full-text
>     search (parallel YES2 FTS and SWORD), markers system (bookmarks,
>     highlights, notes, labels), sync engine with WebSocket,
>     Google/Apple Sign-In, reading plans, devotionals, songs, study
>     pad, word study (Strong's), cross-references, VOTD widget,
>     onboarding, splash screen, deep links, share/clipboard, Sentry
>     crash reporting hooks.
>   * Tests: 379 unit tests across 20 test files — binary readers,
>     repositories, sync events, UI flows, ARI encoding, performance
>     bounds, and accessibility validation.
>
> ------------------------------------------------------------------------
>
> *Relation to existing projects*
>
> I want to be careful here. Bishop, Ezra, and AndBible are mature, 
> respected projects that serve real users every day. I am not 
> suggesting HisWord replaces them. What I am offering is an alternative 
> starting point for anyone who specifically wants:
>
>   * A PocketSword-like experience on iOS (SWORD modules, commentaries,
>     dictionaries, full module catalog)
>   * A Kotlin-first codebase with no Objective-C, no C++ JNI in the
>     mobile layer, and no JavaScript/TypeScript
>   * Native Compose UI that is shared between Android and iOS
>   * A unified abstraction over both SWORD and the YES2/Quick Bible format
>
> To @Aaron Rainbolt's note about the deleted KMP repository from 
> November 2024 — this is a different project entirely and has no 
> relation to that one.
>
> ------------------------------------------------------------------------
>
> *On stewardship*
>
> I do not claim ownership of this work. The SWORD library is 
> CrossWire's. The YES2 format and Quick Bible engine belong to Yuku 
> contributors. I started this project because I use these tools 
> personally and wanted something that worked cleanly on iOS, and no 
> suitable open-source implementation existed that I could find.
>
> I am open to the project moving under CrossWire or another appropriate 
> organization. I am also open to handing stewardship to anyone with 
> more capacity — I have other commitments at the moment. If @Michael 
> Johnson or anyone on the list would like to continue this work or fold 
> it into a larger effort, please reach out. Collaboration is the point.
>
> If anyone wants to review the code, file issues, test on iOS, or 
> contribute features, you are welcome. The architecture documentation 
> and an autonomous execution prompt for AI-assisted development are 
> both included in the agents directory.
>
> I can be reached at maxmmur at gmail.com.
>
> Blessings,
> Maxwell Murunga
>
>
>
> On Wed, Jan 15, 2025 at 3:52 PM Troy A. Griffitts 
> <scribe at crosswire.org> wrote:
>
>     Hi Ryan,
>
>     No, you are not the only one.  Marjan pointed this out to me a couple
>     days ago when I first posted in this thread.  Looking into it, Google
>     had removed Bishop 2 weeks ago because we had not properly identified
>     CrossWire Bible Society as an organization with our D-U-N-S number
>     and
>     government issued trade name license. I started that process then
>     and we
>     have now been confirmed and our apps are back in the store:
>
>     https://play.google.com/store/apps/details?id=org.crosswire.bishop
>
>
>     On 1/15/25 3:32 AM, Ryan wrote:
>     > Am I the only android user who can't find Bishop on Google Play
>     anymore?
>     >
>     >
>     >
>     >
>     >
>     >> Bishop does this and compiles for both iOS and Android:
>     >>
>     >> https://crosswire.org/applications/#bishop
>     >>
>     > _______________________________________________
>     > sword-devel mailing list: sword-devel at crosswire.org
>     > http://crosswire.org/mailman/listinfo/sword-devel
>     > Instructions to unsubscribe/change your settings at above page
>     _______________________________________________
>     sword-devel mailing list: sword-devel at crosswire.org
>     http://crosswire.org/mailman/listinfo/sword-devel
>     Instructions to unsubscribe/change your settings at above page
>
>
> _______________________________________________
> sword-devel mailing list
> sword-devel at crosswire.org
> https://crosswire.org/mailman/listinfo/sword-devel

-- 
Vous aimez la Bible ? Vous êtes étudiant en théologie ? Utilisez 
l'application libre Xiphos <https://xiphos.org/> ou Andbible 
<https://andbible.github.io/> et accédez aux textes sources, à des 
commentaires, des dictionnaires et beaucoup d'autres fonctionnalités... 
Me contacter pour des traductions en français.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://crosswire.org/pipermail/sword-devel/attachments/20260809/05a72e42/attachment-0001.htm>


More information about the sword-devel mailing list