Skip to content

Latest commit

 

History

History
42 lines (36 loc) · 3.25 KB

TECH.md

File metadata and controls

42 lines (36 loc) · 3.25 KB

Ezra Bible App Technology

Ezra Bible App is a web-based Bible study app for desktop and tablet computers. On the desktop the application is based on Electron. On Android tablets the application is based on Cordova. It is programmed in JavaScript, uses SQLite as its database and HTML with jQuery UI for its frontend. Bible translation modules are managed using node-sword-interface.

Furthermore, the following components are used (among others):

  • Sequelize ORM for handling database access
  • Umzug Migration library for handling database schema upgrades
  • conf for persisting configuration
  • Pug template engine for rendering verse list
  • jQuery Steps for the bible translation assistant
  • CodeMirror in-browser editor for note editing
  • Marked Markdown parser/renderer for rendering markdown-based verse notes
  • Chart.js library for verse statistics charts (used for visualizing search results)
  • ISO-639-3 for turning bible translation language codes into readable language names
  • docxjs for exporting tagged verse lists to Word documents
  • SpinKit for CSS-animated loading spinners
  • I18next for internationalization
  • browserify for bundling the JavaScript code for the Cordova app
  • fontawesome for the icon set
  • fuse.js for fuzzy (approximate) search algorithm
  • async-mutex for synchronizing some asynchronous operations
  • Hammer.JS for detecting swipe gestures on mobile
  • iziToast for notification popups
  • Dropbox SDK for linking Ezra Bible App with Dropbox and synchronizing the database file

To test Ezra Bible App, the following frameworks are used:

To package Ezra Bible App, the following components are used:

Code metrics of Ezra Bible App are available here.