You are viewing the documentation for the 2.4.x release series. The latest stable release series is 3.0.x.

§Play 2.4.x documentation

Play is a high-productivity Java and Scala web application framework that integrates the components and APIs you need for modern web application development.

Play is based on a lightweight, stateless, web-friendly architecture and features predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications thanks to its reactive model, based on Iteratee IO.

Getting started

  1. Installing Play
  2. Creating a new application
  3. Using the Play console
  4. Setting-up your preferred IDE
  5. Anatomy of a Play application
  6. Play Tutorials
  7. Play Modules

Working with Play

  1. Play for Scala developers
  2. Play for Java developers

Detailed topics

  1. The build system
    1. The Build System
    2. About sbt settings
    3. Manage application dependencies
    4. Working with sub-projects
    5. Play enhancer
    6. Aggregating reverse routers
    7. Improving Compilation Times
    8. Cookbook
    9. Debugging your build
  2. Working with public assets
    1. Working with public assets
    2. Using CoffeeScript
    3. Using LESS CSS
    4. Using JSHint
    5. Using RequireJs
  3. Configuration
    1. Configuration file syntax and features
    2. Configuring the application secret
    3. Configuring the JDBC connection pool
    4. Configuring Play's thread pools
    5. Configuring logging
    6. Configuring Play filters
      1. Configuring gzip encoding
      2. Configuring security headers
      3. Configuring CORS
    7. Configuring WS SSL
      1. Configuring WS SSL
      2. Quick Start to WS SSL
      3. Generating X.509 Certificates
      4. Configuring Trust Stores and Key Stores
      5. Configuring Protocols
      6. Configuring Cipher Suites
      7. Configuring Certificate Validation
      8. Configuring Certificate Revocation
      9. Configuring Hostname Verification
      10. Example Configurations
      11. Using the Default SSLContext
      12. Debugging SSL
      13. Loose Options
      14. Testing SSL
  4. Databases
  5. Managing database evolutions
  6. Deploying your application
    1. Deploying your application
    2. Production configuration
    3. Setting up a front end HTTP server
    4. Configuring HTTPS
    5. Deploying to a cloud service
      1. Deploying to a cloud service
      2. Deploying to Heroku
      3. Deploying to Cloud Foundry
      4. Deploying to Clever Cloud
      5. Deploying to Boxfuse and AWS

Experimental libraries

  1. Akka HTTP server backend
  2. Reactive Streams integration

Hacking Play

  1. Building Play from source
  2. Repositories
  3. Issue tracker
  4. Documentation guidelines
  5. Translating documentation
  6. Working with git
  7. 3rd party tools

About Play

  1. Play philosophy
  2. Play user groups

Play releases

  1. What's new in Play 2.4?
  2. What's new in Play 2.3?
  3. What's new in Play 2.2?
  4. What's new in Play 2.1?
  5. Play 2.4 migration guide
    1. Play 2.4 migration guide
    2. Removing `GlobalSettings`
    3. Anorm
    4. Migrating Plugin to Module
  6. Play 2.3 migration guide
  7. Play 2.2 migration guide
  8. Play 2.1 migration guide

§Modules and plugins

Temporary modules directory

Next: Getting started

Found an error in this documentation? The source code for this page can be found here. After reading the documentation guidelines, please feel free to contribute a pull request. Have questions or advice to share? Go to our community forums to start a conversation with the community.