diff --git a/documentation/manual/ModuleDirectory.md b/documentation/manual/ModuleDirectory.md index 8f5ef666462..1119ed58e4b 100644 --- a/documentation/manual/ModuleDirectory.md +++ b/documentation/manual/ModuleDirectory.md @@ -12,40 +12,25 @@ To create your own public module or to migrate from a `play.api.Plugin`, please - **Website:** - **Short description:** Write a Swagger spec in your routes file -### mohiva/swagger-codegen-play-scala - -* **Website:** -* **Short description:** Swagger client generator which is based on the PlayWS library - ## Assets -### play2-sprites -* **Website:** -* **Short description:** play2-sprites is an sbt plugin that generates sprites from images. - -### Sass Plugin -* **Website:** -* **Short description:** Asset handling for [Sass](https://sass-lang.com/) files - ### Typescript Plugin * **Website:** * **Short description:** A plugin for sbt that uses sbt-web to compile typescript resources -### play-webpack Plugin -* **Website:** -* **Short description:** A plugin for sbt to handle webpack generated assets and library to render Javascript on the server with Java's nashorn engine. ## Authentication (Login & Registration) and Authorization (Restricted Access) ### Silhouette (Scala) -* **Website:** -* **Documentation:** +* **Website:** +* **Documentation:** * **Short description:** An authentication library that supports several authentication methods, including OAuth1, OAuth2, OpenID, CAS, Credentials, Basic Authentication, Two Factor Authentication or custom authentication schemes. -### Deadbolt 2 Plugin +### Deadbolt 2 -* **Website (docs, sample):** +* **Website (Scala):** +* **Website (Java):** * **Short description:** Deadbolt is an authorization mechanism for defining access rights to certain controller methods or parts of a view using a simple AND/OR/NOT syntax ### Play-pac4j (Java and Scala) @@ -54,24 +39,12 @@ To create your own public module or to migrate from a `play.api.Plugin`, please * **Documentation:** * **Short description:** Play client in Scala and Java which supports OAuth/CAS/OpenID/HTTP authentication and user profile retrieval -### Authentication and Authorization module (Scala) - -* **Website:** -* **Documentation(en):** -* **Documentation(ja):** -* **Short description** This module provides an authentication and authorization way - ### Play! Authenticate (Java) * **Website:** * **Documentation:** * **Short description:** A highly customizable authentication module for Play -### SecureSocial (Java and Scala) - -* **Website:** -* **Short description:** An authentication module supporting OAuth, OAuth2, OpenID, Username/Password and custom authentication schemes. - ## Datastore @@ -81,10 +54,6 @@ To create your own public module or to migrate from a `play.api.Plugin`, please * **Documentation:** * **Short Description:** Supports database migration with Flyway. -### MongoDB Jongo Plugin (Java) -* **Website (docs, sample):** -* **Short description:** Provides managed MongoDB access and object mapping using [Jongo](http://jongo.org/) - ### MongoDB Morphia Plugin (Java) * **Website (docs, sample):** * **Short description:** Provides managed MongoDB access and object mapping using [Morphia](https://morphia.dev/) @@ -93,18 +62,10 @@ To create your own public module or to migrate from a `play.api.Plugin`, please * **Website (docs, sample):** * **Short description:** Provides a Play 2.x module for ReactiveMongo, asynchronous and reactive driver for MongoDB. -### Play-Hippo -* **Website (docs, sample):** -* **Short description:** Provides a Play 2.x module for Hippo CMS. - ### Play-Slick * **Website (docs, sample):** * **Short description:** This plugin makes Slick a first-class citizen of Play. -### Redis Plugin (Java and Scala) -* **Website (docs, sample):** -* **Short description:** Provides a redis based cache implementation, also lets you use Redis specific APIs - ### ScalikeJDBC Plugin (Scala) * **Website:** @@ -116,16 +77,6 @@ To create your own public module or to migrate from a `play.api.Plugin`, please * **Short description:** Provides both blocking and asynchronous redis based cache implementation. It implements common Play's CacheApi for both Java and Scala plus provides a few more Scala APIs implementing various Redis commands including the support of collections. - -## Deployment - -### WAR Module - -* **Website:** -* **Documentation:** -* **Short description:** Allow to package Play! 2.x applications into standard WAR packages. - - ## Page Rendering ### Play Pagelets @@ -134,42 +85,23 @@ To create your own public module or to migrate from a `play.api.Plugin`, please * **Seed project:** -## Localization - -### FolderMessages plugin - -* **Website:** -* **Short Description:** Allows you to split localization messages files into separate manageable files. - ### JsMessages * **Website:** -* **Short description:** Allows to compute localized messages on client side. - -### Messages Compiler Plugin (Scala) - -* **Website:** -* **Documentation:** -* **Short description:** Provides type safety for the project's messages. - -### Play I18n HOCON - -* **Website:** -* **Documentation:** -* **Short description:** A Playframework module to use HOCON for i18n instead of Java Properties +* **Short description:** Allows to compute localized messages on client side. Play 2.7 support. ## Performance ### Google's HTML Compressor (Java and Scala) -* **Website:** -* **Documentation:** +* **Website:** +* **Documentation:** * **Short description:** Google's HTML Compressor for Play 2. ### Memcached Plugin * **Website:** -* **Short description:** Provides a memcached based cache implementation +* **Short description:** Provides a memcached based cache implementation. ## Task Schedulers @@ -179,13 +111,6 @@ To create your own public module or to migrate from a `play.api.Plugin`, please * **Documentation**: * **Short description**: Quartz Extension and utilities for cron-style scheduling in Akka -### play-akkjobs - -* **Website**: -* **Documentation**: -* **Short description**: A simple Play 2.5 module, which allows you to manage jobs - - ## Settings ### Remote Configuration @@ -196,12 +121,7 @@ To create your own public module or to migrate from a `play.api.Plugin`, please ### Google Closure Template Plugin * **Website (docs, sample):** [https://github.com/gawkermedia/play2-closure](https://github.com/gawkermedia/play2-closure) -* **Short description:** Provides support for Google Closure Templates - -### HTML5 Tags module (Java and Scala) -* **Website:** -* **Documentation:** -* **Short description:** These tags add client side validation capabilities, based on model constraints (e.g required, email pattern, max|min length...) and specific input fields (date, telephone number, url...) to Play templates +* **Short description:** Provides support for Google Closure Templates. Supports Play 2.4. ### Scalate * **Website:** @@ -225,11 +145,128 @@ To create your own public module or to migrate from a `play.api.Plugin`, please * **Repository:** * **Short description:** A library for Bootstrap that gives you an out-of-the-box solution with a set of input helpers and field constructors. + +## Utilities + +### Emailer Plugin (Java and Scala) +* **Website (docs, sample):** +* **Short description:** Provides an emailer based on apache commons-email + +### play-guard (Scala) + +* **Website:** +* **Documentation:** +* **Short description:** Play2 module for blocking and throttling abusive requests + + +## Cloud Services + +### Benji (Scala) + +* **Website:** +* **Documentation:** +* **Short description:** A reactive module for the Benji library, providing an Object storage DSL (AWS/Ceph S3, Google Cloud Storage). + + +## Archived or Unmaintained Modules + +These libraries are no longer maintained, so they may not support recent Play releases, and may also contain unpatched +bugs and security vulnerabilities. You might find them useful as examples, but you should avoid relying on them unless +you fully understand what they are doing and are willing to fork them to fix issues yourself. + +If the status of any modules has changed, feel free to send a PR with an update +[here](https://github.com/playframework/playframework/blob/master/documentation/manual/ModuleDirectory.md). + +### mohiva/swagger-codegen-play-scala + +* **Website:** +* **Short description:** Swagger client generator which is based on the PlayWS library + +### play2-sprites +* **Website:** +* **Short description:** play2-sprites is an sbt plugin that generates sprites from images. + +### Sass Plugin +* **Website:** +* **Short description:** Asset handling for [Sass](https://sass-lang.com/) files + +## play-webpack Plugin + +* **Website:** +* **Short description:** A plugin for sbt to handle webpack generated assets and library to render Javascript on the server with Java's nashorn engine. + +### Authentication and Authorization module (Scala) + +* **Website:** +* **Documentation(en):** +* **Documentation(ja):** +* **Short description** This module provides an authentication and authorization way + + +### SecureSocial (Java and Scala) + +* **Website:** +* **Short description:** An authentication module supporting OAuth, OAuth2, OpenID, Username/Password and custom authentication schemes. + + +### MongoDB Jongo Plugin (Java) + +* **Website (docs, sample):** +* **Short description:** Provides managed MongoDB access and object mapping using [Jongo](http://jongo.org/) + +### Play-Hippo + +* **Website (docs, sample):** +* **Short description:** Provides a Play 2.x module for Hippo CMS. + +### Redis Plugin (Java and Scala) + +* **Website (docs, sample):** +* **Short description:** Provides a redis based cache implementation, also lets you use Redis specific APIs + + +### WAR Module + +* **Website:** +* **Documentation:** +* **Short description:** Allow to package Play! 2.x applications into standard WAR packages. + +### FolderMessages plugin + +* **Website:** +* **Short Description:** Allows you to split localization messages files into separate manageable files. + +### Messages Compiler Plugin (Scala) + +* **Website:** +* **Documentation:** +* **Short description:** Provides type safety for the project's messages. + +### Play I18n HOCON + +* **Website:** +* **Documentation:** +* **Short description:** A Playframework module to use HOCON for i18n instead of Java Properties + + +### play-akkjobs + +* **Website**: +* **Documentation**: +* **Short description**: A simple Play 2.5 module, which allows you to manage jobs + +### HTML5 Tags module (Java and Scala) + +* **Website:** +* **Documentation:** +* **Short description:** These tags add client side validation capabilities, based on model constraints (e.g required, email pattern, max|min length...) and specific input fields (date, telephone number, url...) to Play templates + ### Thymeleaf module (Scala) + * **Website:** * **Documentation:** * **Short description:** Allows to use [Thymeleaf](https://www.thymeleaf.org/) template engine as an alternative -to Twirl + to Twirl ### Handlebars templates (Java and Scala) @@ -237,12 +274,6 @@ to Twirl * **Documentation:** * **Short description:** [Handlebars](http://handlebarsjs.com/) templates based on [Java port](https://github.com/jknack/handlebars.java) of handlebars with special handlers for Play Framework. -## Utilities - -### Emailer Plugin (Java and Scala) -* **Website (docs, sample):** -* **Short description:** Provides an emailer based on apache commons-email - ### Geolocation (Java) * **Website:** @@ -257,17 +288,7 @@ to Twirl ### Sitemap Generator (Java) * **Website:** -* **Documentation:** -* **Short description:** Automatic [sitemaps](https://www.sitemaps.org/) generator for Play - -### play-guard (Scala) - -* **Website:** -* **Documentation:** -* **Short description:** Play2 module for blocking and throttling abusive requests - - -## Cloud services +* **Documentation:** * **Short description:** S3 (Simple Storage Service) API wrapper for Play -### Benji (Scala) - -* **Website:** -* **Documentation:** -* **Short description:** A reactive module for the Benji library, providing an Object storage DSL (AWS/Ceph S3, Google Cloud Storage). - ### Pusher * **Website:** * **Documentation:** @@ -295,4 +310,4 @@ to Twirl ### Push Notifications module (Java) * **Website:** * **Documentation:** -* **Short description:** A stupid-simple module for creating, batching, queuing and sending push notifications. +* **Short description:** A stupid-simple module for creating, batching, queuing and sending push notifications. \ No newline at end of file