Skip to content

SASS and Mustache implementation of ILLiad (Interlibrary Loan software) templates

Notifications You must be signed in to change notification settings

NYULibraries/illiad-templates

 
 

Repository files navigation

ILLiad templates

CircleCI Docker Repository on Quay

This project contains the logic for templating ILLiad (Interlibrary Loan software) with Mustache, stylesheets in SASS and scripts in CoffeeScript.

  • Uses https://github.com/barnabyalter/microservice_precompiler to render, compile and compress this project.
  • Uses Docker, Kubernetes and LFTP to deploy after compile to on-prem Windows Servers.
  • Requires a proxy to pass from Kubernetes (on AWS) to the ILLiad servers (on-prem)
    • If a proxy is required for LFTP it can be reenabled by doing echo "set ftp:proxy ${FTP_PROXY}\n" >> /home/docker/.lftp/rc

Usage

Compile and deploy

With Docker

Compile:

docker compose run compile

Assuming FTP credentials are set up in docker-compose.yml (for local deploys) or in Kubernetes secrets (for remote deploys):

docker compose build dev-deploy
docker compose run dev-deploy

For more information on how we're serverlessly deploying these templates see this article. This is now implemented in the Hermes server API.

Compile without Docker

This is run within the Docker build, but to see it locally:

  • Uncomment volumes in the compile service to allow creation of dist/ outside of the container:
  volumes:
  - .:/app

Note that dist/ is being git-ignored, so won't show up in git status output.

  • Run the compile script:
ruby compile.rb

Institutions

We allow other institutions to manage their pages without having to use our static pages by letting them submit PRs into institutions/{ILLIAD_INST_NAME} in the ILLiad proprietary HTML already prebuilt.

Read the wiki for more information

About

SASS and Mustache implementation of ILLiad (Interlibrary Loan software) templates

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 47.5%
  • SCSS 22.5%
  • Ruby 20.7%
  • JavaScript 3.4%
  • Mustache 3.3%
  • CoffeeScript 1.3%
  • Other 1.3%