A collection of awesome Play 1.x modules, tools, and resources.
Inspired by awesome-php, awesome-python, frontend-dev-bookmarks and awesome-ruby.
Contributions are always welcome!
Lists all the modules available with the following badges
:
Badge | Meaning |
---|---|
the module is registered in playframework.com/modules. The badge points to the registered page. | |
the module is not registered in playframework.com/modules. You have to add an external repository in your dependencies.yml file. The badge points to the official module page. |
|
 | the module is available in MavenCentral thanks to the maven-play-plugin. The badge poins to the maven repository of the module. |
 | the module has been updated since playframework.com/modules has been frozen. The badge points to the official module page. |
The modules are divided in the following categories :
- Database
- Deployment
- Injection/dependencies
- Language
- Messaging/events
- Monitoring
- Persistence
- Presentation
- Rest
- Scaffolding
- Search
- Security
- Template
- Translation
- Misc
If you want to contribute information about a module, please refer to the guide.
- [carbonate] Carbonate
Creates and runs database migrations using Hibernate schema update to automatically generate SQL to the migrations. See this blog post
- [chronostamp] Chronostamp
Enhances Models by adding and updating timestamp fields (created_at & updated_at).
- [db] Database module
 Export your Play! domain model to a DDL file and import a database into your Play! domain model.
- [jpagen] JpaGen
Generates JPA Entities and Composite keys (when needed) from metadata or a file containing a list of tables.
- [liquibase] Liquibase
Liquibase is a simple, reliable and elegant solution for database refactoring management
- [logisimayml] logisima-yml
Exports your database into an yml file
- [migrate] Database migration
Maintains database versions for your project.
- [multidb] Multiple Databases
Scale your application to multiple databases with a common schema.
- [capistrano] Capistrano
Deploys a remote application using Capistrano + SSH + VCS and run it in nohup/background mode.
- [cargo] Cargo
Remotely deploys your application.
- [cloudbees] CloudBees
Provides integration with CloudBees.
- [cloudfoundry] CloudFoundry
Automatically configure the database your application is deployed in In CloudFoundry.
- [dotcloud] Dotcloud
Deploys your application to dotcloud
- [gae] Google App Engine
 Creates application for the Google App Engine platform.
- [heroku] Heroku
Deploys your application on Heroku.
- [jelastic] Jelastic Deployment Support
Deploy your application in the Jelastic Platform.
- [openebay] Open eBay
Provides the basic plumbing to create an Open eBay Application
- [openshift] Openshift
Openshift is Red Hat’s free, auto-scaling, cloud-based platform-as-a-service for Java, Perl, PHP, Python, and Ruby applications.
- [play-gae-q42] Q42's Google App Engine
Maintained module for Google App Engine integration. Should be used instead of [gae]
- [playapps] playapps.net
playapps.net is a streamlined deployment environment designed to get your Play applications up and running quickly and efficiently
- [reverseproxy] ReverseProxy
Configures your application to automatically switch between the HTTP and HTTPS protocols per page when used behind a front end.
- [router] Play Router Annotations
 Adds routes through annotations, allowing you to declare your routes in your controllers.
- [stax] Stax
Easy deployment to Stax cloud hosting platform (http://www.stax.net).
- [vhost] VHost
Adds some virtual hosts functionality with separate datasource and customizable application settings for each virtual host.
- [constretto] Constretto
 Makes integration with the Constretto configration framework easy
- [guice] Guice
 Injects Guice managed components into your application.
- [ivy] Ivy dependency management
Manages your dependencies with apache ivy.
- [maven] Maven dependency management
Manages your dependencies with apache maven
- [spring] Spring
 Allows to use Spring managed beans inside your play! 1.x applications.
- [googleclosure] Google Closure
This module is aimed at integrating Google Closure tools with play!.
- [gwt] Google Web Toolkit
This module provides a helper to simplify the integration of a GWT UI with Play as an application server.
- [gwt2] GWT2
Integrates Play with GWT
- [scala] Scala
 Play Scala enables you to use the Scala language for your application keeping key properties of the Play framework
- [scalagen] Scala Gen
Scala code generators for the Play! framework
- [scalasecure] Scala secure
This module provides basic security (authentication/ authorization) for Play applications written in Scala.
- [akka] Akka support
Allows you to configure akka through The Play! framework’s conf/application.conf file.
- [camel] Camel
A EIP + Messaging module for the Play! Framework
- [pusher] Pusher
This module lets you easily add realtime functionality to your Play applications with Pusher using websockets.
- [rabbitmq] RabbitMQ
RabbitMQ offers a highly available and scalable, and yet lightweight, messaging system.
- [accesslog] Accesslog
 A Play framework module that performs request logging similar to an access log file in nginx or apache.
- [betterlogs] BetterLogs
Enhances the default logs adding the class and method names, where the log has been called, its signature, the file name and the line.
- [infoplay] InfoPlay
InfoPlay is a module which gives many informations like infophp in PHP language.
- [jpastats] Jpastats
Record how many database queries were executed during a request
- [log4play] Log4Play
Provides a log4j appender which publishes log entries to an EventStream
- [play-hibernate-statistics] Hibernate statistics
Displays MBean Hibernate statistics
- [playerrors] Playerrors
Playerrors gathers and informs you about the errors in your production webapps, so you can fix them before your visitors get a chance to complain
- [profiler] Mini-profiler
Displays a mini profiler in your application
- [recordtracking] RecordTracking
RecordTracking unobtrusively tracks the creation, updating and elimination events regarding to records.
- [statsd] Statsd
The module is a wrapper over StatsD which allow for dead simple statistic aggregation from within play.
- [associations] Associations
 This module reduces the code to manage bi-directional associations.
- [cream] JCR for Play!
A module that seamlessly integrates Apache Jackrabbit(JCR 2.0) with Play framework
- [ebean] EBean ORM support
 Adds Ebean ORM to play!. Still in very experimental phase.
- [mongo] MongoDB
Provides a simple, elegant solution for using models stored in mongodb. For a more complex use cases, please take a look at the morphia module.
- [morphia] MongoDB Integration
 Seamlessly MongoDB access integration with Play’s Model interface.
- [mybatisplay] MyBatisPlay
Provides support for MyBatis persistence framework.
- [neo4j] logisima-neo4j
Integrate neo4j database into your play! project.
- [objectify] Objectify
Objectify is a flexible abstraction on Google App Engine/J which makes data access simple and elegant
- [orientdb] OrientDB
OrientDB for Play! Framework
- [redis] Redis
 The Redis Play! module helps you easily use Redis in your Play! applications
- [riak] Riak
Allow to use riak-java-client in play! way.
- [s3blobs] S3Blobs
The S3Blobs Play Framework Module provides an easy way to read an write files from Amazon S3 from within JPA entities.
- [siena] Siena
 Enables Siena support to map your Java entities to GAE/MySQL/PostgreSQL/H2 from your play application
- [twig] Twig
Twig superpowers Google App Engine’s Datastore for Play applications. Get a fluid API, in-memory joins, and asynchronous queries out of the box.
- [coffee] CoffeeScript
 CoffeeScript is a great way to produce javascript. This module provides support for it (Java and Scala).
- [excel] Excel
 Template based Excel report generator
- [formee] Formee
Helps to write forms and add client and server side validation.
- [greenscript] Minimize javascript/css files
Play with your javascript/css files!
- [html5validation] HTML5 Validation
Client-side form validation based on your Play framework model annotations using HTML5 attributes.
- [jqueryui] Jqueryui
The jQuery UI module provides working examples of jQuery UI widgets, integrated with a Play application.
- [jqvalidate] JQuery Validation
Client-side form validation via jQuery, based on your model annotation
- [jqvalidation] Jqvalidation
A jquery library API for validation, supports Ajax validation (per field or per form)
- [less] Less module
 Converts less to CSS, and handles error reporting in your Play application
- [markdown] Markdown
 Easily bring markdown contents into your application.
- [menu] Menu
Eases the implementation of navigation menu.
- [navigation] Navigation
Define and display navigation menus in your Play application.
- [paginate] Paginate
 A replacement for #{list} tags that allows for easy pagination.
- [pdf] PDF module
 Renders PDF document from your HTML templates. This module is based on the YaHP Converter library.
- [pegdown] PegDown Markdown
Integrates the pegdown Markdown processor with your Play application
- [press] Minimize javascript/css files
A JavaScript, CSS and Less minimizer that is designed to be transparent to the application developer.
- [sass] Syntactically Awesome Stylesheets
 Sass makes CSS fun again. Sass is CSS, plus nested rules, variables, mixins, and more, all in a concise, readable syntax.
- [table] Table
 Simplifies the code needed to display data in HTML tables.
- [tabularasa] Tabula Rasa
Tabula Rasa provides support for user-customisable tables in views
- [twitterbootstrap] Twitterbootstrap
Bundles up the twitter-bootstrap stylekit and the play less plugin, easing the .less files edition (changes are dynamically taken into account).
- [jersey] Jersey
Integrates Jersey into the Play! Framework.
- [resteasy] RESTEasy Play! module
The RESTEasy Play! module allows you to define JAX-RS RESTful web services in the Play! Framework using RESTEasy.
- [resteasycrud] RESTEasy CRUD module
The Play! RESTEasy CRUD module which allows you to automagically generate your RESTful CRUD resources for a given model
- [swagger] Swagger
Creates a self-documenting meta-description for REST APIs which allows for code-gen, UI-sandbox, and test framework.
- [crudsiena] CRUD for Siena
Offers a fully usable web interface for your Siena Model objects with a few more features than default [crud] module.
- [mocha] Mocha
An implementation of mocha UI javascript interface for Play!
- [play-bootstrap] Basic bootstrap scaffolding
Creating Bootstrap based applications (derived from the default [scaffold] module).
- [scaffold] Scaffold
Scaffold will generate basic scaffolding for bootstrapping a project from your JPA or Senia entities
- [elasticsearch] ElasticSearch
Elastic Search is a Distributed Search Solution based on Apache Lucene. This module provides an embedded Elastic Server instance for Rapid Development.
- [search] Search
 Search allows you to have basic full text search functionalities to your JPA Model. It is based on Lucene.
- [browserid] BrowserID
BrowserID is an experimental new way of signing into websites. The goal with BrowserID is to design something safe and easy for users and the developers.
- [cas] logisima-cas
This module is a CAS client for Play! application.
- [casino] Casino
This project provides a simple method to integrate sign-up and password recovery to your project
- [deadbolt] Deadbolt
 Deadbolt is an authorisation mechanism for defining access rights to certain controller methods or parts of a view
- [fbconnect] Facebook connect
Easily integrate Facebook based authentication into any Play framework application.
- [force] Force.com
Build Play! applications that integrates to Force.com. Provides OAuth authentication and REST API adapter.
- [linkedin] LinkedIn OAuth Authentication
Easily integrate LinkedIn’s OAuth authentication into your Play Framework application
- [oauth] OAuth Client
This module provides tools to connect to an OAuth provider, such as Twitter or Google.
- [recaptcha] Recaptcha
 Quickly integrate reCaptcha.com challenge-response test in your applications.
- [securepermissions] Secure Permissions
Extends the defaut secure module to add permission checks based on the rules in the Seam Framework (based on Drools rules).
- [securesocial] SecureSocial
 SecureSocial allows you to add an authentication UI to your app that works with services based on OAuth1, OAuth2, OpenID and OpenID+OAuth hybrid protocols
- [shibboleth] Shibboleth
Allow users to login to your Play! application via Shibboleth.
- [fastergt] Faster Groovy Templates
 Replaces the default groovy template implementation with GT-Engine which is faster and uses less memory.
- [japid] Japid Template Engine
 A pure Java-based fast statically typed template engine for the Play! framework version 1.2.x.
- [mustache] Mustache
Allows you to define logic-less template snippets that can be used server-side in your Play! views as well as client-side in your JavaScript.
- [rythm] Rythm Template Engine
 PlayRythm is a Razor like template engine.
- [scalate] Scalate
Scalate Template engine support.
- [thymeleaf] Thymeleaf
Play framework module to use Thymeleaf 2.0 as a template engine.
- [cobertura] Cobertura
 Integrates with Cobertura to calculate the percentage of code accessed by tests (test coverage).
- [httpmock] HttpMock
Caches WebService requests to emulate them in order to overcome connection problems (lag, denial of service, HTTP errors) for fast developping.
- [mockito] Mockito
 Mockito is a mocking framework that tastes really good
- [qunit] QUnit
 The QUnit module provides integration of JUnit Javascript tests with the Play! Framework.
- [spocktests] Spock tests
Runs Spock specifications and to write BDD style tests (still wrapped as junit) with the expressive power of groovy.
- [springtester] spring tester
 Write tests that can auto-magically inject mocks (using Mockito) into Play applications wired up using the spring module.
- [tests] Alternative Test module
The Test Module for Play!Framework helps you write tests quicker, is a cleaner and reusable manner.
- [webdrive] Webdrive
 WebDrive module provides Selenium 2 testing support for Play framework
- [i18ntools] I18ntools
This module will add some tools to ease use of i18n in your Play! projects.
- [messages] @messages
 Module messages provides a web based tool for managing your application’s localizations.
- [nemrod] Nemrod
This module helps to import and export translations from your application to a Nemrod instance automatically.
- [play-i18ned] Play-i18ned
Converts default i18n files from an Excel Sheet and the other way around.
- [bespin] Bespin online editor
Allows you to edit all the application sources directly in the browser using bespin, the web code editor.
- [bhave] Bhave
Integrates with bhave, a web-based behavior driven development (BDD) framework, for web apps, done in a funky way!
- [cheese] Cheese
Simplified API for integration your application with the CheddarGetter subscription management service.
- [cms] Cms
A very simple embedded CMS
- [cnm] Content Negotiation
Helps using content types which are not directly supported by default such as VCard and Atom/RSS feeds using annotations.
- [externalconfig] External Config
Allows easy loading of external config / properties files. This allows for easy configuration of an app deployed in a war.
- [featureflags] Feature Flags
Enables you to easily use flags in your application that you can switch ON and OFF at runtime, using an admin screen.
- [googlecheckout] Google Checkout
Enable your Play application to integrate with Google Checkout as a merchant.
- [gravatar] Gravatar
 Integrate Gravatar into your Play application
- [hazelcast] Hazelcast
 Dropin replacement for EhCacheImpl or MemcachedImpl from Play
- [postmark] Postmark
 Postmark module provides easy integration with postmarkapp.com for handling outgoing emails
- [useragentcheck] UserAgentCheck
UserAgentCheck displays a banner to notify users when their browser is outdated.
- [play1-chart] Play1-Chart
The Chart module allows for easy generation of chart images.
You know a tool that every player should use? Tell us!
- Mavenized modules and how to use them
- Using Play's controller with a nice roundup about caching, expiration and eTags
- Using Luo's
cache4
annotation
To the extent possible under law, PerfectCarl has waived all copyright and related or neighboring rights to this work.