Grace is a fork of Grails 5 that started development in early 2022, it's a powerful and open-source One-Person web framework used to build enterprise-grade Spring Boot applications with the powerful Groovy programming language. The core framework is very extensible and there are numerous Plugins available that provide easy integration of add-on features.
You need a Java Development Kit (JDK) installed, but it is not necessary to install Groovy because it's bundled with the Grace distribution.
To install Grace, visit https://github.com/graceframework/grace-framework/releases and download the version you would like to use. Set a GRACE_HOME
environment variable to point to the root of the extracted download and add GRACE_HOME/bin
to your executable PATH
. Then in a shell, type the following:
grace create-app com.example.blog
cd blog
grace run-app
To build Grace, clone this GitHub repository and execute the install Gradle target:
git clone https://github.com/graceframework/grace-framework.git
cd grace-framework
./gradlew pTML zipDist
If you encounter out of memory errors when trying to run the install target, try adjusting Gradle build settings. For example:
export GRADLE_OPTS="-Xmx2G -Xms2G -XX:NewSize=512m -XX:MaxNewSize=512m"
For installation instructions see INSTALL.txt.
Grace is first and foremost a web application framework, but it is also a platform. Grace provide Plugin API to expose a number of extension points that let you extend anything from the command line interface to the runtime configuration engine.
Grace Plugins repository contains several plugins to develop applications more easier and productive.
- Grace Admin is a powerful and flexible, extensible administration framework and management console for Grace, which use Grace Dynamic Modules.
- Grace Htmx is a plugin provide helpers to easy use HTMX.
- Grace Hotwire is a plugin for using Hotwire Stimulus and Turbo.
- Grace Unpoly is a plugin for using Unpoly.
- Grace View Components is a plugin for creating reusable, testable and encapsulated view components.
Grace profile is a simple directory that contains a profile.yml
file and directories containing the "commands", "skeleton" and "templates" defined by the profile.
Grace provides several profiles in the Grace Profiles repository,
base
- a profile for other profiles to extend fromplugin
- a profie to create a pluginprofile
- a profie to create a custom profilerest-api
- a profie for REST API applicationsweb-plugin
- a profile for Web plugin that contains web resourcescss
js
images
web
- default profile to creae a web app
Grace Guides repository contains several guides that show how to use Grace.
- Spring Boot Application with Grace Plugins is an introductory guide that shows you how to use Grace Plugins in your Spring Boot application.
- Spring Boot Application with GSP is an introductory guide that shows you how to use GSP as view templates in your Spring Boot application.
- Build Admin Console with Grace Admin Plugin is an introductory guide that shows you how to use Grace Admin plugin to build flexible, extensible management console in your application.
Grace framework is Open Source software released under the Apache License, Version 2.0.