grima - whispering into alma's ear with APIs
This project is maintained by zemkat
Grima is meant to be a time-saving addition to your workflow. Since everyone’s workflow is a bit different, the installation instructions have a lot to do with what is easy for you.
We measure cost in terms of time. All software recommendations are free. Hardware requirements are minimal and should likely run on your existing computers.
Low cost ways to get started:
Go to the public grima install with your Alma API key – this is fine to start, but after a month or so, your institution will probably prefer you not share your API Key with Kathryn’s computer
Go to the grima sandbox without even an Alma API key. It is pretty limited in what it can do, but it might be useful to see if you want to ask for an Alma API Key.
Medium cost (requires installing software):
If you can install software on a personal computer (Windows, MacOS, Linux), then install docker and run grima.bat or grima.sh. Those files download and auto-update grima. You’ll need to add your APIKEY. See the desktop instructions for more details.
If you can install webapps on a unix based web-server, then unpack a release in a web-accessible directory (if apache based, you are probably done, check with the system adminstrator otherwise). See the server instructions for more details.
If you can deploy containerized cloud apps to kubernetes, docker swarm, etc. then adjust one of the example configurations to match your setup. See the cloud instructions for more details.
Grima is a collection of php scripts with minimal dependencies. A reasonably modern version of php is required (one that is still supported by the PHP developers for example), 5.6 and 7.x work fine. Older versions mostly work, but are not as thoroughly tested.
The web server hosting Grima must support https, and Grima must be accessed over https for authentication to work properly.
Grima must be run with Chrome, Firefox, or Safari; authentication will not work properly with Edge or Internet Explorer.
Grima requires libxml to parse Alma’s replies, libcurl to make its API queries,
and PDO to make some very minimal database queries (for users and apikeys). The
default database provider is an sqlite3 file in /tmp/grima. Grima has been
tested with free PostGreSQL instances provided by Heroku as well.
On a Ubuntu server, you would use:
apt-get install php-xml php-sqlite3 php-curl
If your user has their own linux or mac computer, you might consider whether a local install might be simpler. If you have multiple users, then grima should be hosted on a web-server.
Unpack the latest release file (grima-release.tgz) into a web-accessible
directory:
tar xzvf grima-release.tgz
and then visit that site with your web browser, making sure to use https.
Follow the setup instructions to specify an API key for Alma and create a default administrative user.