# Play Reviews
**Vendor:** The Apache Software Foundation  
**Category:** [Java Web Frameworks](https://www.g2.com/categories/java-web-frameworks)  
**Average Rating:** 4.1/5.0  
**Total Reviews:** 13
## About Play
The High Velocity Web Framework For Java and Scala




## Play Reviews
  ### 1. Masterpiece for certain cases

**Rating:** 4.0/5.0 stars

**Reviewed by:** Eva G. | Software Engineer, Enterprise (> 1000 emp.)

**Reviewed Date:** July 23, 2019

**What do you like best about Play?**

It could be very useful, especially when creating a pull request after you have faced a real problem. This structure is web-oriented. It is really easy to implement and handle code - back end and front end. Programming.

**What do you dislike about Play?**

I don't like the documentation. Also, this structure is less popular than Spring or Java EE - this means a lot of asking on StackOverflow or the Play support group instead of having an answer on the board - Tooling around sbt can sometimes be very confusing - Scala sbt could be very slow - dependency resolution is slow - it pulls a lot of things. Actually, I haven't hit many bugs yet, so this is my complete list. Spring was almost out of the box.

**Recommendations to others considering Play:**

You do not need to use TypeSafe, Lightbend, or any platform to use the framework. This makes project maintenance smoother. Play is a high-performance and scalable web application framework. Avoid Norm and Slick, consider using Quill for transactional SQL execution and model binding.

**What problems is Play solving and how is that benefiting you?**

Having data visible on the client side as soon as it is processed is great from a User Experience perspective - and more and more software companies should realize that it is easy to write concurrent code with Scala in the Play framework. It is a battle-tested framework that is analogous to Spring Boot in Java. Having data visible on the client side as soon as it is processed is great from a User Experience perspective - and more and more software companies should realize that

  ### 2. My Experience with Play in software engineer life

**Rating:** 5.0/5.0 stars

**Reviewed by:** Verified User in Computer & Network Security | Small-Business (50 or fewer emp.)

**Reviewed Date:** June 28, 2020

**What do you like best about Play?**

Interface looks good, UI very easy to read and understand.

**What do you dislike about Play?**

Usability can be improved, also sometimes take a long time to upload something.

**Recommendations to others considering Play:**

I would differently recommend to try it, at least for personal experience

**What problems is Play solving and how is that benefiting you?**

Used only for Web development in the office

  ### 3. Great technology for scalable Data and Web-projects

**Rating:** 5.0/5.0 stars

**Reviewed by:** Dmytro B. | Co-Founder, Computer Software, Small-Business (50 or fewer emp.)

**Reviewed Date:** October 11, 2018

**What do you like best about Play?**

The framework is asynchronous by nature, most of the things are possible to do in a non-blocking way. Akka Streams are in the core, and it gives agility to think in the more high-level way - not what to do with Data element, but how to handle a stream of things. Streams are well testable, and by the way, it's possible to cover nearly all aspects in Unit/Integrational tests - from Controllers, DAOs to business logic. The Play works great with Specs2/Scalatest, mocking frameworks (Mocito, Scalamoc) are also suited well. Evolutions feature gives the ability to manage database schema changes easily, not only in a forward way but also backward. One of the best JSON/XML parsing, validation and transformation technologies that I have ever used (and it's possible to use this JSON library independently from the Play Framework project).

**What do you dislike about Play?**

Sometimes documentation is tricky, needs time to dig into things that are not often used. Some parts (especially functional style things e.g. JSON parsers) are like a magic for newcomers, especially if a junior developer is starting in the project. The compiled application might have big size, but it's a drawback more JVM ecosystem than Play Framework itself.

**Recommendations to others considering Play:**

Great Web framework for JSON/XML work, great for REST API, streaming applications.

**What problems is Play solving and how is that benefiting you?**

Rapid Web-development for Data Web-projects with further ability to scale applications.

  ### 4. Solid web application framework with great Akka integration

**Rating:** 4.5/5.0 stars

**Reviewed by:** Verified User in Financial Services | Small-Business (50 or fewer emp.)

**Reviewed Date:** December 27, 2017

**What do you like best about Play?**

* Has a Java AND Scala DSL
* Encourages thinking about things asynchronously
* Access to an actor system out of box if actors needed
* Great framework for standing up apps quickly (CRUD apps, basic REST APIs)
* Auto recompilation when working in development mode

**What do you dislike about Play?**

* Out of box DI framework of choice is Guice (personal pref)
* Akka cluster support seems to require a bit of setup
* Scala DSL may have bit of learning curve

**What problems is Play solving and how is that benefiting you?**

We use Play! to develop REST microservices internally and for proof of concepts.  Would go out on a limb and say that for folks familiar with Akka / Scala, Play! is a battle tested framework that analogous to Spring Boot in Java land.

  ### 5. Simple and fast api servers

**Rating:** 4.0/5.0 stars

**Reviewed by:** Verified User in Internet | Enterprise (> 1000 emp.)

**Reviewed Date:** January 04, 2018

**What do you like best about Play?**

Simple to use
Fast
Hot reloading
Easy to debug

**What do you dislike about Play?**

Play on sbt can be slow to refresh dependencies. 

**Recommendations to others considering Play:**

Good to prototype first and then decide

**What problems is Play solving and how is that benefiting you?**

We run our api servers on the play framework

  ### 6. One of the best Scala Frameworks and certainly will be a good Java framework in the future!

**Rating:** 5.0/5.0 stars

**Reviewed by:** Christian S. | Small-Business (50 or fewer emp.)

**Reviewed Date:** February 24, 2016

**What do you like best about Play?**

Actually the best things are prolly the way how Forms are solved and how it integrates into Akka.
It's actually really great to get Forms, Json Handling and Webservices for Free, but you don't need to use all of them you could actually even just stick to the core.
Since Play 2.4 you could even create a server with just the play dependency.
Also since 2.4 DI is baked directly into the Framework which is really helpful when writing tests.

With Play 2.0 Java was a forgotten up until recently and when Play! 2.5 finally hits a lot of things on Java will also get way easier. However when running on Scala 2.11 a lot of interop code isn't actually great and needs some wrappers. These will also be resolved on Scala 2.12.

Actually even the team behind Play! could be really really helpful, especially when creating a Pull Request after you've hitten a real issue. They try to get the things done with you.

**What do you dislike about Play?**

- Tooling around sbt could sometimes be really messy
- Scala / sbt could be really slow
- Dependency resolution is slow
- Pulls in a lot of stuff

Actually I didn't hit many bugs yet, so this is my complete list.

**Recommendations to others considering Play:**

If you write Scala code and want it to be understandable don't pull in scalaz libraries.
Also stick to the things you need and don't make your code unreadable by using big for {} yield blocks.
Write unit tests, even if you are on Scala.

**What problems is Play solving and how is that benefiting you?**

Currently we develop multiple applications with the Play! Framework.
Actually we create a small in-house ERP system, a restful mailer system for our product and a "eip" application which could be displayed on Xerox MFD's.

  ### 7. Masterpiece for certain cases

**Rating:** 3.5/5.0 stars

**Reviewed by:** Mateusz L. | Owner, Software Engineer, Small-Business (50 or fewer emp.)

**Reviewed Date:** February 24, 2016

**What do you like best about Play?**

Ease. Works out of the box. Documentation for basic stuff is superb. Implementing of first working components is matter of hours - compared to tons of configuration in products like Spring. This framework is oriented on web. Template engine based on scala is superb. Easy to implement and readable for non Play dev - which is handy when you have front end dev who bravely fights with cross browser support. Another plus is ajax / websocket javascript template generator. Play enables you to have parametrized router available from javascript - so even if route changes - front end will still work. Ease of implementing websocket via akka framework is also superb. It is really easy to implement and handle from code - both back end and front end. 

**What do you dislike about Play?**

Play - especially for java lacks of components compared to things like Spring. My last project didn't go with Play because of lack of java specific implementation of oAuth2 Server. Spring had it almost out of the box. Also this framework is less popular than Spring or Java EE - that means a lot of asking on StackOverflow or Play support group instead of having answer on the plate.  

**What problems is Play solving and how is that benefiting you?**

Data processing and near real time presentation of results. Websockets support and javascript helpers gave us huge productivity boost. Having data visible on the client side as soon as they are processed is great from User Experience point of view - and more and more software houses should realize that. 

  ### 8. Play's a Great, Modern Framework

**Rating:** 4.0/5.0 stars

**Reviewed by:** Verified User in Newspapers | Enterprise (> 1000 emp.)

**Reviewed Date:** April 20, 2016

**What do you like best about Play?**

This review is for Play Java 2.5. It makes some good opinions, and has the out-of-box features you'd expect for a Model View Controller framework. I do like that the most recent versions are heavily integrated (yet dependent) on great components, including Guice for dependency injection, Akka for non-blocking, lightweight concurrency, simple unit + functional testing, use of SBT, and the simple EhCache. I love that it's engineered for reactive programming.

**What do you dislike about Play?**

I dislike the documentation. The direction of Play's opinionated framework has changed quickly, but documentation isn't sufficient for each version, particularly Play Java.

**Recommendations to others considering Play:**

Play's an awesome modern MVC framework. Definitely consider Play Scala as Scala is a first citizen in Play. Play Java is useful, so also take it as a serious consideration. Akka rocks.

**What problems is Play solving and how is that benefiting you?**

We're building backend data ingestion services and RESTful APIs. Mostly OLAP.

  ### 9. Modern Java Development, in an easy to use package

**Rating:** 4.0/5.0 stars

**Reviewed by:** Verified User in Think Tanks | Small-Business (50 or fewer emp.)

**Reviewed Date:** February 23, 2016

**What do you like best about Play?**

You can transcend skill sets by using Play! as an intermediary between having your development team learn a more modern JVM language (Scala) and Java. The framework's power can still very easily be seen using Java methods, and in-fact I personally prefer to use Java in my play projects. 

The evolutions database migration system for maintaining updated database models is very, very useful. 

The built in async patterns were really great to get long running backend processes working smoothly and easily.

**What do you dislike about Play?**

There seemed to be lots of boilerplate code that I would need to copy+paste; but that could be an attribute of how we setup our controllers. 

**Recommendations to others considering Play:**

You do not need to use the TypeSafe/Lightbend or whatever's platform to use the framework; you can get a manual build setup very easily without their tools. It makes project maintenance smoother.

**What problems is Play solving and how is that benefiting you?**

Database report generation for a mid-sized team using a play micro-service. The async web requests integration made it very easy to kick off a long running process and get the results appropriately.

  ### 10. Play Framework And Me

**Rating:** 3.5/5.0 stars

**Reviewed by:** Verified User in Internet | Enterprise (> 1000 emp.)

**Reviewed Date:** February 24, 2016

**What do you like best about Play?**

Environment Setup is so Easy. one Activator File does everything for us
AkkA Framework Support
Best Suit for Standalone Application
Scala is More Powerful that Java
Play Actor Concept is superb.
good for Micro Service Architecture
zero development environment setup: just unzip the package and run the runScript



 

**What do you dislike about Play?**

Backward Compatibility is worst.
Cannot Create an application with older Version of Play Framework 
Plugin Support is not as good as Grails & Groovy
Difficult to set up Integration Test.
need to be more Careful with Play Actor, since it create more number of Thread
there is no Security Framework
Modular programming is not well good



**Recommendations to others considering Play:**

Easy to migrate pure Java Resources to Latest Tech Stack

**What problems is Play solving and how is that benefiting you?**

instantly creating application and Deployed for Demo in Same Day.



  ### 11. the review for play framework.

**Rating:** 4.0/5.0 stars

**Reviewed by:** Verified User in Internet | Mid-Market (51-1000 emp.)

**Reviewed Date:** March 05, 2016

**What do you like best about Play?**

The play framework embed non-blocking IO with netty so it is more easy to maintain high-performance than other web appllication framework.

**What do you dislike about Play?**

The play framework written in Scala unnecessarily use  implicit conversion so it is often difficult to read code.

**Recommendations to others considering Play:**

Play is a high-performance and scalable web application framework. 

It is not easy to understand scala language specification and it needs much skills for engineer.
But it is useful and scalable.

**What problems is Play solving and how is that benefiting you?**

Tha play frameworks works on the Java Viertual Machine so devlivery is more difficult than PHP.
I solve the problem by rolling deploy when it deploys.

 It is easy to write concurrency code with Scala on Play framework.

  ### 12. Dev mode does not need to restart the server or recompile

**Rating:** 3.0/5.0 stars

**Reviewed by:** 松 . | 攻城狮, Internet, Small-Business (50 or fewer emp.)

**Reviewed Date:** February 25, 2016

**What do you like best about Play?**

Abandon Servlet
A large number of modules
Dev mode does not need to restart the server or recompile restful
Good support for common IDE
Engine template easy integration testing
Websocket support
Scala support (said play-scala version of high performance?)

**What do you dislike about Play?**

Really too small
There is more agreement
Few Chinese resources

**Recommendations to others considering Play:**

Take a long time to learn

**What problems is Play solving and how is that benefiting you?**

I was solving cross domain requests

  ### 13. Skilled Scala Developer

**Rating:** 3.5/5.0 stars

**Reviewed by:** Verified User in Internet | Mid-Market (51-1000 emp.)

**Reviewed Date:** March 07, 2016

**What do you like best about Play?**

Quickly bootstrap and scala async handlers, good RESTful support and well designer routes schema.

**What do you dislike about Play?**

Poor RESTful errors/json errors support, difficult template engine (Twirl).

**Recommendations to others considering Play:**

Avoid Norm an Slick, consider use Quill for transactional sql execution and models binding.

**What problems is Play solving and how is that benefiting you?**

RESTful APIs. I'm constantly using the well designed routes schema and the async features, including separated non-blocking thread pools.


## Play Discussions
  - [What is Play used for?](https://www.g2.com/discussions/what-is-play-used-for)

- [View Play pricing details and edition comparison](https://www.g2.com/products/play/reviews?section=pricing&secure%5Bexpires_at%5D=2026-05-16+04%3A51%3A24+-0500&secure%5Bsession_id%5D=7ffbb154-d259-4fa3-adf9-472c60d2ae0b&secure%5Btoken%5D=b470e791f883edf616b113b2907ab58597962c2014ba226952f35ed4c59489d7&format=llm_user)


## Top Play Alternatives
  - [spring.io](https://www.g2.com/products/spring-io/reviews) - 4.5/5.0 (290 reviews)
  - [Grails](https://www.g2.com/products/grails/reviews) - 3.6/5.0 (23 reviews)
  - [Vaadin](https://www.g2.com/products/vaadin/reviews) - 4.1/5.0 (35 reviews)

