Principal Languages, Platforms and Tools

Development, Infrastructure & Applications Group (DIAG) Policy

Reviewed for FY22


This document describes the principal technologies DIAG works in - being able to contribute to projects using the technologies here indicates an ability to contribute to the core efforts and applications the team is responsible for. Team members are expected to be able to adapt to contribution-level literacy as necessary, and we support teammates' efforts to learn. The technologies described here are referred to in our job descriptions as "the principal languages and platforms".


  • BASH/shell scripting
  • Ruby
  • PHP
  • Python
  • Java
  • Javascript
  • CSS

APIs & Protocols

  • IIIF
  • GraphQL
  • REST-ful web design

Application Platforms

  • Rails (Model-View-Controller and API design patterns)
  • Blacklight
  • Omeka
  • PKP (OJS, etc)
  • Tomcat
  • ReactJS
  • Node.js

Data Formats & Transformations

  • JSON
  • CSV
  • MRC
  • HTML


  • Unix operating systems
  • Git
  • Build automation tools: Travis, Github Actions, etc.
  • NGINX/Passenger
  • Wowza
  • ArchivesSpace


  • RDBMS: MySQL/Oracle
  • NoSQL Stores: Solr
  • Object stores: Fedora Commons, S3