Development Tooling

In addition to this handbook page, we also have a document How-to for core and common tasks which we encourage team members to add to.

Standard DLS development tools

Make sure these are installed for your individual setup. Many / most of these are also used on other PUL IT teams

  • homebrew for package management on macs
    • When projects have required dependencies, homebrew install instructions are provided in the readme
  • asdf for language version management
    • All DLS projects include the .tool-versions configuration files for asdf
  • docker desktop for development dependencies
    • DLS projects are set up using lando (see below). Lando releases work best with certain versions of docker so the recommended way to install docker is to install lando, which will bring in the correct version of docker as part of its install process.
  • git for version control
    • You’ll also need a Github account
  • Lastpass for shared passwords

Standard project tooling

The tools we use to configure, support, and monitor our applications

  • Use dls-github-labeler to generate an initial set of labels
  • CircleCI for CI
  • Bixby ruby style enforcement that wraps Rubocop and provides defaults determined by the Samvera open source community
  • Lando for running service dependencies like solr and postgres
  • HoneyBadger, DataDog, and Sensu for error tracking and monitoring
  • VPN for connecting to our staging applications
  • SignalSciences for analyzing incoming web traffic and identifying/blocking attacks
  • tmux is on all our servers to allow us to run long tasks without risking connection loss. Several of us use it locally with vim.

Individual Tools

  • Editors: Use what you’re comfortable with. VSCode is a good choice. Several members of DLS use vim. Many other editors are used on various development teams.
  • Wireframing and Diagraming
    • We have institutional access to Adobe XD and Lucid Charts
    • websequencediagrams.com lets you code your diagram with text and then export it as an image
    • Try Mermaid for markdown-based diagrams that will live on github.
  • For Browser testing we have a few licenses for BrowserStack.
  • Other tools used by members of our team include

We frequently share new tooling discoveries and tips between teams at our all-hands meetings and on our #devs slack channel.