Community contributed extensions

HTML5 Validation

The HTML5 validation module provides a drop-in replacement for HTML <input> elements called #{input /} which automatically adds HTML5 validation attributes to the final output based on your Play! model validation annotations.

Enable the HTML5 validation module

In the /conf/application.conf file, enable the HTML5 validation module by adding this line:

# The HTML5 validation module


To use this module, simply replace those <input> elements which need validation with the #{input /} tag and specify the field from the corresponding model class. You can use all available attributes from the original HTML5 <input> element as well. Additional attributes can be set using the attributes attribute.

The list of available attributes is as follows:


Suppose you have a Model class called User which has a field called name declared as

public String name;

you can replace your existing <input> element with the following:

#{input for:'', id:'YourID', class:'class1 class2' /}

The tag will then output the following HTML code:

<input name="" value="${user?.name}" id="YourID" class="class1 class2" required maxlength="8" pattern="[a-z]*>

Supported Annotations

The module currently supports the following annotations:

Issue tracking

If you want to report a bug or wish for a new feature, please use the issue tracker