Recommended development tools for this guide are:
Code examples can be used with any Clojure build tool, although this guide focuses on using Clojure CLI tools. Some examples use Leiningen and will be updated to Clojure CLI, although the Clojure code will be the same.
Additional Development toolsλ︎
To complete all the steps in this guide, especially around deployment tasks, additional development tools and services are required.
|Test (command line)
GitHub and GitHub actions will be predominantly used in this guide, although more use of CircleCI and GitLab will also be introduced. CircleCI is a developer focused service for Continuous Integration, developed with Clojure, providing obs that package up common workflows such as deploying to specific Cloud services.
|Continuous Integration Services
Heroku deployment to be deprecated
Heroku has been used to simplify deployment directly from source code using existing build packs. Heroku now requires a commercial license for deployment so this content is to be deprecated.
Practicalli is considering other persistent storage approaches for this guide and any contributions in this regard is much appreciated
- Crux - an open source document database with bitemporal graph queries
- Datomic - a commercial transactional database with a flexible data model, elastic scaling, and rich queries.
- Amazon Aurora - MySQL and PostgreSQL compatible cloud native relational database
- Amazon DynamoDB with Clojure Faraday library - for persisting JSON like data structures