Languages and frameworks
Table of Contents
cloud.gov uses buildpacks to support a variety of programming languages and frameworks.
Supported languages and frameworks
Fully maintained language support
cloud.gov supports applications written in Go, Java, Node.js, .NET Core, PHP, Python, R, and Ruby. cloud.gov also supports applications that rely on a static binary that uses the 64-bit Linux kernel ABI, or that consist of static HTML, CSS, and Javascript assets. See the Cloud Foundry system (supported) buildpacks list for details.
Other languages
You can use a custom buildpack to use other languages. See custom buildpacks for more information about this feature. Cloud Foundry has a list of community buildpacks that you can use as custom buildpacks, along with documentation for building your own custom buildpacks.
Not supported
cloud.gov cannot run applications that use .NET Framework, or application binaries that require access to Microsoft Windows kernel or system APIs.
If you’re interested in running applications that require .NET Framework or Windows, email inquiries@cloud.gov, so that our team can learn about your needs and update you when this is available.
Sample applications to deploy
You can deploy example applications in many languages and frameworks:
- Hello worlds: Code for simple apps in several frameworks. Try deploying them and using them to build your own. Included: Java, Clojure, .NET Core, NodeJS, PHP, Flask (Python), Padrino (Ruby), Sinatra (Ruby).
- Drupal 7: Running Drupal on cloud.gov is fully supported. We provide the backend databases (MySQL or Postgres) and asset storage (AWS S3 buckets) so Drupal is cloud-ready.
- Drupal 8 demonstrates use of Composer for development, and includes S3 integration.
- Cloud Foundry community sample applications: This GitHub organization has seventy examples (and counting) of languages, frameworks and tools that can be adapted to run on cloud.gov.
Customer example applications
Several cloud.gov customers have their code available as open source for review and reuse, including:
- Dept of Justice Civil Rights Portal: Python Django application running at civilrights.justice.gov
- ATF eRegulations: Python Django application that uses PostgreSQL.
- College Scorecard API: Ruby application with an Elasticsearch backend.
- Federal Election Commission API: Python application with PostgreSQL and Elasticsearch backends.
- cloud.gov Pages: NodeJS and Docker workers in cloud.gov with S3 and RDS backends.
- NSF Beta Drupal: Drupal 8 with setup for Docker local development, and cloud.gov staging/live environments.