Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove old or abandoned 3rd party play modules from module directory #11129

Merged
merged 4 commits into from
Feb 10, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
245 changes: 130 additions & 115 deletions documentation/manual/ModuleDirectory.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,40 +12,25 @@ To create your own public module or to migrate from a `play.api.Plugin`, please
- **Website:** <https://github.com/iheartradio/play-swagger>
- **Short description:** Write a Swagger spec in your routes file

### mohiva/swagger-codegen-play-scala

* **Website:** <https://github.com/mohiva/swagger-codegen-play-scala>
* **Short description:** Swagger client generator which is based on the PlayWS library

## Assets

### play2-sprites
* **Website:** <https://github.com/koofr/play2-sprites/>
* **Short description:** play2-sprites is an sbt plugin that generates sprites from images.

### Sass Plugin
* **Website:** <https://github.com/jlitola/play-sass>
* **Short description:** Asset handling for [Sass](https://sass-lang.com/) files

### Typescript Plugin
* **Website:** <https://github.com/ArpNetworking/sbt-typescript>
* **Short description:** A plugin for sbt that uses sbt-web to compile typescript resources

### play-webpack Plugin
* **Website:** <https://github.com/BowlingX/play-webpack>
* **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:** <https://www.silhouette.rocks/>
* **Documentation:** <https://www.silhouette.rocks/docs/>
* **Website:** <https://github.com/honeycomb-cheesecake/play-silhouette>
* **Documentation:** <https://silhouette.readme.io/docs>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The GitHub repo this website (https://github.com/mohiva/play-silhouette) is archived:

This repository is not longer maintained. All the related resources like the documentation and the forum will be closed.

However:
@honeycomb-cheesecake already is working on a fork (even thought GitHub doesn't show it as one) here: https://github.com/honeycomb-cheesecake/play-silhouette
I think we should replace the entry with the fork.

Copy link
Member Author

@Max-AR Max-AR Jan 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's right! The new readme.io is where the new documentation is. I've added the github link as well!

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah ok, however the GitHub link on the top of the readme page still links to the mohiva repo...

Copy link
Member Author

@Max-AR Max-AR Jan 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ahh I didn't realize, thanks for pointing that out. I raised an issue

playframework/play-silhouette#19

* **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):** <https://github.com/schaloner/deadbolt-2>
* **Website (Scala):** <https://github.com/schaloner/deadbolt-2-scala>
* **Website (Java):** <https://github.com/schaloner/deadbolt-2-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

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually deadbolt 2 is not dead. There are versions compatibly with Play 2.8 for Scala (https://github.com/schaloner/deadbolt-2-scala) and Java (https://github.com/schaloner/deadbolt-2-java). (I know that because I released that versions since the original author asked me if I want to take over because of lack of time)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cheers, I had no idea. Let me update this.

### Play-pac4j (Java and Scala)
Expand All @@ -54,24 +39,12 @@ To create your own public module or to migrate from a `play.api.Plugin`, please
* **Documentation:** <https://github.com/pac4j/play-pac4j/blob/master/README.md>
* **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:** <https://github.com/t2v/play20-auth>
* **Documentation(en):** <https://github.com/t2v/play20-auth/blob/master/README.md>
* **Documentation(ja):** <https://github.com/t2v/play20-auth/blob/master/README.ja.md>
* **Short description** This module provides an authentication and authorization way

### Play! Authenticate (Java)

* **Website:** <https://joscha.github.io/play-authenticate/>
* **Documentation:** <https://github.com/joscha/play-authenticate/blob/master/README.md>
* **Short description:** A highly customizable authentication module for Play

### SecureSocial (Java and Scala)

* **Website:** <http://securesocial.ws/>
* **Short description:** An authentication module supporting OAuth, OAuth2, OpenID, Username/Password and custom authentication schemes.


## Datastore

Expand All @@ -81,10 +54,6 @@ To create your own public module or to migrate from a `play.api.Plugin`, please
* **Documentation:** <https://github.com/flyway/flyway-play/blob/master/README.md>
* **Short Description:** Supports database migration with Flyway.

### MongoDB Jongo Plugin (Java)
* **Website (docs, sample):** <https://github.com/alexanderjarvis/play-jongo>
* **Short description:** Provides managed MongoDB access and object mapping using [Jongo](http://jongo.org/)

### MongoDB Morphia Plugin (Java)
* **Website (docs, sample):** <https://github.com/morellik/play-morphia>
* **Short description:** Provides managed MongoDB access and object mapping using [Morphia](https://morphia.dev/)
Expand All @@ -93,18 +62,10 @@ To create your own public module or to migrate from a `play.api.Plugin`, please
* **Website (docs, sample):** <http://reactivemongo.org/releases/0.1x/documentation/tutorial/play.html>
* **Short description:** Provides a Play 2.x module for ReactiveMongo, asynchronous and reactive driver for MongoDB.

### Play-Hippo
* **Website (docs, sample):** <https://github.com/jbloemendal/play-hippo>
* **Short description:** Provides a Play 2.x module for Hippo CMS.

### Play-Slick
* **Website (docs, sample):** <https://github.com/playframework/play-slick>
* **Short description:** This plugin makes Slick a first-class citizen of Play.

### Redis Plugin (Java and Scala)
* **Website (docs, sample):** <https://github.com/typesafehub/play-plugins>
* **Short description:** Provides a redis based cache implementation, also lets you use Redis specific APIs

### ScalikeJDBC Plugin (Scala)

* **Website:** <https://github.com/scalikejdbc/scalikejdbc-play-support>
Expand All @@ -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:** <https://github.com/dlecan/play2-war-plugin>
* **Documentation:** <https://github.com/dlecan/play2-war-plugin/blob/develop/README.md>
* **Short description:** Allow to package Play! 2.x applications into standard WAR packages.


## Page Rendering

### Play Pagelets
Expand All @@ -134,42 +85,23 @@ To create your own public module or to migrate from a `play.api.Plugin`, please
* **Seed project:** <https://github.com/splink/pagelets-seed>


## Localization

### FolderMessages plugin

* **Website:** <https://github.com/germanosin/play-foldermessages>
* **Short Description:** Allows you to split localization messages files into separate manageable files.

### JsMessages

* **Website:** <https://github.com/julienrf/play-jsmessages>
* **Short description:** Allows to compute localized messages on client side.

### Messages Compiler Plugin (Scala)

* **Website:** <https://github.com/tegonal/play-messagescompiler>
* **Documentation:** <https://github.com/tegonal/play-messagescompiler/blob/master/readme.md>
* **Short description:** Provides type safety for the project's messages.

### Play I18n HOCON

* **Website:** <https://marcospereira.github.io/play-i18n-hocon/>
* **Documentation:** <https://marcospereira.github.io/play-i18n-hocon/>
* **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:** <https://github.com/mohiva/play-html-compressor>
* **Documentation:** <https://github.com/mohiva/play-html-compressor/blob/master/README.md>
* **Website:** <https://github.com/fkoehler/play-html-compressor>
* **Documentation:** <https://github.com/fkoehler/play-html-compressor/blob/master/README.md>
* **Short description:** Google's HTML Compressor for Play 2.

### Memcached Plugin

* **Website:** <https://github.com/mumoshu/play2-memcached>
* **Short description:** Provides a memcached based cache implementation
* **Short description:** Provides a memcached based cache implementation.

## Task Schedulers

Expand All @@ -179,13 +111,6 @@ To create your own public module or to migrate from a `play.api.Plugin`, please
* **Documentation**: <https://github.com/enragedginger/akka-quartz-scheduler/blob/master/README.md>
* **Short description**: Quartz Extension and utilities for cron-style scheduling in Akka

### play-akkjobs

* **Website**: <https://github.com/tuxBurner/play-akkjobs>
* **Documentation**: <https://github.com/tuxBurner/play-akkjobs/blob/master/README.md>
* **Short description**: A simple Play 2.5 module, which allows you to manage jobs


## Settings

### Remote Configuration
Expand All @@ -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:** <https://github.com/loicdescotte/Play2-HTML5Tags>
* **Documentation:** <https://github.com/loicdescotte/Play2-HTML5Tags/blob/master/README.md>
* **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:** <https://github.com/scalate/play-scalate>
Expand All @@ -225,24 +145,135 @@ To create your own public module or to migrate from a `play.api.Plugin`, please
* **Repository:** <https://github.com/adrianhurt/play-bootstrap>
* **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):** <https://github.com/playframework/play-mailer>
* **Short description:** Provides an emailer based on apache commons-email

### play-guard (Scala)

* **Website:** <https://github.com/sief/play-guard/>
* **Documentation:** <https://github.com/sief/play-guard/blob/master/README.md>
* **Short description:** Play2 module for blocking and throttling abusive requests


## Cloud Services

### Benji (Scala)

* **Website:** <https://github.com/zengularity/benji>
* **Documentation:** <https://github.com/zengularity/benji/tree/master/examples>
* **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:** <https://github.com/mohiva/swagger-codegen-play-scala>
* **Short description:** Swagger client generator which is based on the PlayWS library

### play2-sprites
* **Website:** <https://github.com/koofr/play2-sprites/>
* **Short description:** play2-sprites is an sbt plugin that generates sprites from images.

### Sass Plugin
* **Website:** <https://github.com/jlitola/play-sass>
* **Short description:** Asset handling for [Sass](https://sass-lang.com/) files

## play-webpack Plugin

* **Website:** <https://github.com/BowlingX/play-webpack>
* **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:** <https://github.com/t2v/play20-auth>
* **Documentation(en):** <https://github.com/t2v/play20-auth/blob/master/README.md>
* **Documentation(ja):** <https://github.com/t2v/play20-auth/blob/master/README.ja.md>
* **Short description** This module provides an authentication and authorization way


### SecureSocial (Java and Scala)

* **Website:** <http://securesocial.ws/>
* **Short description:** An authentication module supporting OAuth, OAuth2, OpenID, Username/Password and custom authentication schemes.


### MongoDB Jongo Plugin (Java)

* **Website (docs, sample):** <https://github.com/alexanderjarvis/play-jongo>
* **Short description:** Provides managed MongoDB access and object mapping using [Jongo](http://jongo.org/)

### Play-Hippo

* **Website (docs, sample):** <https://github.com/jbloemendal/play-hippo>
* **Short description:** Provides a Play 2.x module for Hippo CMS.

### Redis Plugin (Java and Scala)

* **Website (docs, sample):** <https://github.com/typesafehub/play-plugins>
* **Short description:** Provides a redis based cache implementation, also lets you use Redis specific APIs


### WAR Module

* **Website:** <https://github.com/dlecan/play2-war-plugin>
* **Documentation:** <https://github.com/dlecan/play2-war-plugin/blob/develop/README.md>
* **Short description:** Allow to package Play! 2.x applications into standard WAR packages.

### FolderMessages plugin

* **Website:** <https://github.com/germanosin/play-foldermessages>
* **Short Description:** Allows you to split localization messages files into separate manageable files.

### Messages Compiler Plugin (Scala)

* **Website:** <https://github.com/tegonal/play-messagescompiler>
* **Documentation:** <https://github.com/tegonal/play-messagescompiler/blob/master/readme.md>
* **Short description:** Provides type safety for the project's messages.

### Play I18n HOCON

* **Website:** <https://marcospereira.github.io/play-i18n-hocon/>
* **Documentation:** <https://marcospereira.github.io/play-i18n-hocon/>
* **Short description:** A Playframework module to use HOCON for i18n instead of Java Properties


### play-akkjobs

* **Website**: <https://github.com/tuxBurner/play-akkjobs>
* **Documentation**: <https://github.com/tuxBurner/play-akkjobs/blob/master/README.md>
* **Short description**: A simple Play 2.5 module, which allows you to manage jobs

### HTML5 Tags module (Java and Scala)

* **Website:** <https://github.com/loicdescotte/Play2-HTML5Tags>
* **Documentation:** <https://github.com/loicdescotte/Play2-HTML5Tags/blob/master/README.md>
* **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:** <https://github.com/dmitraver/scala-play-thymeleaf-plugin>
* **Documentation:** <https://github.com/dmitraver/scala-play-thymeleaf-plugin/blob/master/README.md>
* **Short description:** Allows to use [Thymeleaf](https://www.thymeleaf.org/) template engine as an alternative
to Twirl
to Twirl

### Handlebars templates (Java and Scala)

* **Website:** <https://github.com/andriykuba/play-handlebars>
* **Documentation:** <https://github.com/andriykuba/play-handlebars/blob/master/README.md>
* **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):** <https://github.com/playframework/play-mailer>
* **Short description:** Provides an emailer based on apache commons-email

### Geolocation (Java)

* **Website:** <https://edulify.github.io/play-geolocation-module.edulify.com/>
Expand All @@ -257,17 +288,7 @@ to Twirl
### Sitemap Generator (Java)

* **Website:** <https://edulify.github.io/play-sitemap-module.edulify.com/>
* **Documentation:** <https://github.com/edulify/play-sitemap-module.edulify.com/blob/master/README.md>
* **Short description:** Automatic [sitemaps](https://www.sitemaps.org/) generator for Play

### play-guard (Scala)

* **Website:** <https://github.com/sief/play-guard/>
* **Documentation:** <https://github.com/sief/play-guard/blob/master/README.md>
* **Short description:** Play2 module for blocking and throttling abusive requests


## Cloud services
* **Documentation:** <https://github.com/edulify/play-sitemap-module.edulify.com/blob/master/READM

### Amazon SES module (Scala)

Expand All @@ -281,12 +302,6 @@ to Twirl
* **Documentation:** <https://github.com/Rhinofly/play-s3/blob/master/README.md>
* **Short description:** S3 (Simple Storage Service) API wrapper for Play

### Benji (Scala)

* **Website:** <https://github.com/zengularity/benji>
* **Documentation:** <https://github.com/zengularity/benji/tree/master/examples>
* **Short description:** A reactive module for the Benji library, providing an Object storage DSL (AWS/Ceph S3, Google Cloud Storage).

### Pusher
* **Website:** <https://pusher.com/>
* **Documentation:** <https://github.com/tindr/Play2Pusher>
Expand All @@ -295,4 +310,4 @@ to Twirl
### Push Notifications module (Java)
* **Website:** <https://github.com/splendidbits/play-pushservices>
* **Documentation:** <https://github.com/splendidbits/play-pushservices/blob/master/README.md>
* **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.