I get what you’re going for and I appreciate you throwing the idea out there. 
But I don’t think this is the right move.

The grails app folder isn’t just a label. It’s part of how the framework 
functions. Grails, the build system, plugins, and pretty much every tool in the 
ecosystem expect that structure. Changing it would break a lot of stuff and 
create unnecessary friction for anyone working on or migrating projects.

Also, grails app contains way more than just the web layer. You’ve got domain 
classes, services, taglibs. It’s the full structure of a Grails app, not just a 
frontend or web entry point. Calling it webapp might actually confuse more than 
it helps.

I get wanting to make things cleaner or more neutral, but in this case I think 
the convention has real value. It’s consistent, well understood, and makes it 
easier to work across Grails projects without surprises.


From: Gianluca Sartori <g.sart...@gmail.com>
Date: Friday, April 18, 2025 at 4:02 AM
To: dev@grails.apache.org <dev@grails.apache.org>
Subject: 'grails-app' folder name
I've been thinking about this forever...

We have the `grails-app` folder containing the conventions over
configuration project structure that is a Grails standard, a different one
from the `src` folder structure.

The fact it contains `grails` in its name can be useful to immediately
recognise the type of the project by giving a quick look at the directory
tree. But to my eyes that is all it does.

I think today I finally found the braveness and recklessness to propose we
change it to a more "domain specific" or "technical" name instead of having
the name of the product in it.

The meaning of that folder should be given by its role in the context
rather than a marketing/communication purpose.

So I am proposing we change the `grails-app` to `webapp` to indicate it
contains the web part of the application.

Pros:
- Removes the name of the product from a technical folder
- Gives it a meaning that is immediately intelligible from a developer
point of view (more people know what a `webapp` is that a `grails-app`, no
need to explain further)
- It is a good time to make this change since the move to Apache is a big
change/event

Cons:
- Breaking change when porting applications from older Grails versions
(must be documented but it's an easy fix)

Bomb dropped, what is the community opinion?

Cheers,
Gianluca Sartori

Reply via email to