KJV-API ======= King James Version web API is a machine and human callable service to query the King James Bible and provides useful features, such as random verses and a quote of the day. EXTERNAL DATA ============= The software uses a sqlite3 database as external data dependancy, saved locally and modified to remove false Bible translations (included) https://github.com/scrollmapper/bible_databases For software dependancies see INSTALL.txt INSTALLATION ============ See INSTALL.TXT USAGE ===== The program may be invoked by running kjv-api.sh in a non-root account, or via systemd daemon process in a non-root account. Alternately for testing, the program may be run on another port by running: $ uwsgi_python3 --http-socket : --wsgi-file /opt/kjv-api/app.py --callable app or by executing kjv-api-test.sh which will listen on 0.0.0.0:1612 Visiting the base directory will show the user-facing documentation via web browser or cURL. When testing or doing a deployment, the data directory must be owned by whatever user is running the program in order to prevent a sqlite3.OperationalError for writing to a "readonly" database. CONTENTS ======== . ├── app.py - main program ├── data │   ├── 1828_Webster_KJV.json - Dictionary │   ├── kjv.aff - KJV Spellchecking Description file (hunspell) │   ├── kjv.db - KJV sqlite3 database │   └── kjv.dic - KJV Spellchecking dictionary file (hunspell) ├── favicon.ico ├── html │   ├── dictionary.html - dictionary search landing page /define │   ├── find.html - unified search bar landing page /find │   ├── header.html - navigation bar added programatically to rich results │   ├── heaven.html - Bible way to heaven, static page /salvation │   ├── index.html - / landing page with unified search bar │   ├── reader.html - not yet implemented Bible browser end point │   ├── reading_plan.html - not yet implemented Bible reading plan generator │   ├── response.html - Template for rich verse responses │   ├── search.html - Bible keyword search landing page /search │   ├── show.html - Bible verse search landing page /show │   └── votd.html - Matty's test VOTD rich landing page ├── install │   ├── apache.site.conf.example - example installation configuration │   └── kjv-api.service - example systemd service file ├── INSTALL.txt - installation instructions ├── js │   └── collapsible.js - js for the definition drop-down menu used in unified search ├── kjv-api.sh - runs flask app on port 1611 ├── kjv-api-test.sh - runs flask app on port 1612 ├── media │   └── kjv_background.jpg - Matty's test rich media ├── README.txt - This document ├── styles │   ├── collapsible.css │   ├── fonts │   │   ├── Arizonia-Regular.ttf │   │   └── Parisienne-Regular.ttf │   ├── human_readable.css │   ├── search_rich.css │   └── votd.css └── tools └── av1611_dictionary_scraper.py - builds a dictionary json for the 1828 dictionary AUTHOR ====== Copyright Tyler R Dinsmoor & Matty Sneederson 2023