Articles
Custom JSON marshalling in Grails for flexible API responsesFor Australian development teams shipping APIs from Sydney, Melbourne, or Brisbane offices, the way a Grails application serialises objects can shape how…
Building Grails Apps With Audit Logging Using Hibernate EnversWhen a fintech team in Melbourne rebuilds their customer onboarding flow, the engineers rarely celebrate the audit logs. Yet a year later, when a dispute lands…
Using Grails with Terraform for Infrastructure as CodeGrails applications are quick to develop because convention, Groovy, and the Spring ecosystem remove much of the repetitive work. Infrastructure can be a…
Creating a Grails application with a WebSocket pluginReal-time features have moved from being a novelty to a baseline expectation in modern web software. Whether it is a live chat overlay for a customer support…
Using Grails With Spring Batch for Bulk Data ProcessingFor teams running on the JVM, bulk data processing often becomes a bottleneck once nightly jobs outgrow simple cron scripts. Spring Batch has long been the de…
Custom HQL queries in Grails for effective reportingMany Australian development teams rely on Grails to build internal dashboards and compliance reports that satisfy obligations under the Privacy Act 1988 and…
Building Transactional Service Layers in Grails ApplicationsIn any non-trivial web application, the service layer ends up carrying the weight of business logic that needs to stay consistent regardless of how many…
Using Grails and Flyway for Versioned Database ChangesDatabase changes become difficult when an application moves beyond a developer laptop. A new column may be needed for a feature, an index may be required for…
Creating Grails Application with Internationalization and LocalizationA Grails application can serve users in several countries without duplicating controllers, views, or domain logic. Internationalization, often shortened to…
Using Grails With GraphQL For Flexible API QueriesGrails and GraphQL make a practical combination for teams building Java and Groovy applications that need a flexible API without abandoning familiar…