Awesome Groovy
Curated list of the most awesome Groovy Libraries.
Build tools, setup and CI
- Gradle - A powerful build system for the JVM
- GMavenPlus - A rewrite of GMaven, a Maven plugin for Groovy
- SDKMAN - The Software Development Kit Manager (Previously known as GVM)
- skeletal - A simple project creation tool that uses packaged templates (successor of Lazybones)
- Lazybones - A simple project creation tool that uses packaged project templates.
- Jenkins job-dsl-plugin - A Groovy DSL for Jenkins Jobs
- travis-groovy - execute groovy scripts on travis-ci
- Android Groovy Shell - code and execute groovy scripts directly on your smartphone
IDE and Editor Support
- IntelliJ IDEA - The Most Intelligent IDE for the Java Platform
- Groovy Grails Tool Suite - Eclipse-based IDE optimized for developing, debugging and executing Groovy and Grails applications
- Groovy Web Console - The online Groovy console
- LightTable Plugin - LightTable Support
- SpaceVim - SpaceVim
lang#groovylayer - Sublime Text 2/3 - Run groovy scripts from Sublime Text
Web Frameworks
- Grails - A powerful web application framework based on the Groovy language
- Micronaut - A brand new microservices framework created by the Grails team
- Spring-Boot - Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that can you can "just run". Use Groovy as your coding language.
- Gaelyk - A lightweight Groovy toolkit for Google App Engine Java
- Glide - Create awesome apps on Google App Engine in a snap
- Ratpack - A toolkit for JVM web applications
- gServ - A Groovy toolkit for creating SPAs and REST based micro-services without the need for a container (Tomcat, JBoss, etc.).
Database
- GORM - Grails ORM, but can be used stand-alone without Grails
- Gmongo - A Groovy wrapper to the mongodb Java driver
- Gstorm - A simple ORM for simple databases and CSV files to be used in groovy scripts
- Tayra - Incremental backup tool for MongoDB
- Groovy-liquibase - Yet Another Groovy DSL for Liquibase
- Effigy - Groovy annotation-driven JDBC row mapping framework (abandoned)
- elasticsearch-groovy - Elasticsearch Groovy client
Rich Application
- Griffon - Griffon is an application framework for developing desktop applications in the JVM
- GroovyFx - GroovyFX provides a Groovy binding for JavaFX 2.0.
HTTP
- Http-Builder - HTTPBuilder is the easiest way to manipulate HTTP-based resources from the JVM
- HTTP Builder NG - HTTP Builder NG is a modern Groovy DSL for making http requests.
- HTTP Builder NG Gradle Plugin - Gradle plugin providing HTTP Builder NG support in a Gradle build configuration.
- AsyncRestClient - Combine the power of RESTClient with RxGroovy for async http calls
- Groovy-wslite - Lightweight SOAP and REST webservice clients for Groovy
- Hyperpoet - Easy-to-use and customizable HTTP client for Groovy
Testing
- Spock - The Enterprise-ready testing and specification framework.
- Geb - Very Groovy Browser Automation
- Betamax - Betamax is a tool for mocking external HTTP resources such as web services and REST APIs in your tests.
- HTTP Mock Server - HTTP Mock Server allows to mock HTTP request using groovy closures.
- Ersatz Mock Server - A simple and expressive simulated HTTP server for testing client code with configurable responses.
- Dru - Data Reconstruction Utility loads data from external sources JSON, YML for easy testing GORM, DynamoDB or just plain POJOs.
- Gru - Groovy HTTP Testing Framework for running integration and semi-ingetration tests for any HTTP backend with native unit test support for Grails and Spring MVC.
Concurrency
- GPars - The GPars concurrency and parallelism framework for the JVM
- RxGroovy - RxJava bindings for Groovy
- Vertx - Vert.x is a lightweight, high performance application platform for the JVM
Code Analysis
- CodeNarc - Static analysis tool for Groovy
- Sonar-Groovy - SonarQube Groovy plugin
Transpilers
- Grooscript - Converts your Groovy code to Javascript
Static Web
- Grain - Static Web Site Building Framework For Groovy
- Gaiden - Gaiden is a tool that makes it easy to create documentation with Markdown.
Language Utilities
- Functionalgroovy - Functional programming in Groovy
- Groovy-stream - A collection of classes to give a fluent builder for Streams (Lazy Groovy Generators)
- Flipside - Simple Groovy options library
- groovy-common-extensions - Lets you add things commonly useful to the Groovy language via the extension system
- groovy-extra-list-behaviour - Adds extra methods to Lists via the extension system
- GPerfUtils - Groovy-based tools verifying performance of your code
- Fuzzy-CSV - Simple lightweight data processing library, useful for shaping/processing your tabular data before its consumed by another service or library.
Data Processing
- Nextflow - Groovy DSL for Data-driven computational pipelines
File System Utilities
- Groovy-Vfs - A DSL for Groovy on top of Apache VFS2
- Directree - A Simple DSL to create Directory Tree with Text Files
DSLs
- document-builder - A document builder for Groovy for PDF or Word documents.
- spreadsheet-builder - Spreadsheet builder provides convenient way how to create MS Excel OfficeOpenXML Documents (XSLX)
- GroovyCSV - A simple CSV parsing library for groovy
- Groogle - A Groovy DSL written to use Google services APIs.
Scripting Tools
- EasyDokkaPlugin - Gradle script plugin to generate documentation by Dokka documentation engine for Java and Kotlin
- GradleMavenPush - Gradle script plugin to upload Gradle Artifacts to Maven repositories
- picocli - Parser library and framework for CLI. Usage help with ANSI colors. Autocomplete. Nested subcommands and more.
- sshoogr - DSL library for working with remote servers through SSH.
Rule Engines
- grules - rule engine for data preprocessing
- n-cube - a Rules Engine, Decision Table, Decision Tree, Templating Engine, and Enterprise Spreadsheet, built as a hyper-space.
Resources
Official Resources
- The official groovy home - Groovy's new home
- Groovy's source - Groovy's source code mirrored on Github
- Groovy mailing lists - Note the new mailing list
- Official Documentation - the definitive source of groovy documentation
Try Groovy in Browser
Groovy Code Examples
- MrHaKi's Goodness - Look out for entries titled "Groovy Goodness" , "Grails Goodness", Gradle Goodness"
- PLEAC Groovy - Groovy is one of the 3 languages out of 32, having completed 100% of PLEAC examples.
Staying up to date
- Groovy Calamari - Weekly curated publication about the Groovy Ecosystem
- Groovy Weekly - Groovy weekly newsletter
- Grails Diary - Particulary useful for Grails developers
- Groovy Podcast - Ken Kousen and Baruch Sadogursky discuss news and insight from the Groovy ecosystem.
Interactive Learning
- Groovy-Koans - Collection of small exercises in the form of unit tests