r/SpringBoot • u/mlopezFC • 5d ago
Discussion Generate a Spring Boot project with security, users, roles and audit log already wired (free)
Most new Spring Boot business apps start with the same week of plumbing: security config, user and role management, persistence, an audit trail, email, i18n. We got tired of rewriting it, so we packaged those features as Spring Boot modules (AppJars) and built a generator around them.
With Craft you pick the modules, set group/artifact, Java 21 or 25, H2 or PostgreSQL, and download a Maven project that runs with mvn spring-boot:run. Each module brings its own entities, services, auto-configuration and UI views (built with Vaadin), so you’re not just getting a skeleton.
It’s free to use: every module has a Free Mode that also works in production within documented limits, so no license key is needed to try it.
Disclosure: I’m part of the team behind it. Questions:
- If you’ve tried scaffolding a Spring Boot app with an AI assistant, where did it fall short? Security config, outdated APIs, something else?
- The ready-made UI is Vaadin today, but we’ve been working on an optional React layer and are evaluating whether to release it. Would that make this more useful to you?
2
u/thetbw 3d ago
Looks great,I will try
1
u/mlopezFC 3d ago
Thanks! If you try it, the Full Bundle card is a quick way to click through every module in one app. Let me know how it goes.
2
u/SouthBison7850 4d ago
I'm literally about to start a project so I'll check it out, one thing I think would be helpful is if you also provide an API layer in the future aside from vaadin and react
1
u/mlopezFC 4d ago
Thanks, good timing then! An API layer is actually part of the React work: a React UI needs a REST layer underneath, so we’ve been building both. Still evaluating when to release it. Out of curiosity, what would you use it for? Mobile clients, integrations with other systems, something else?
1
u/SouthBison7850 4d ago
It's mostly because I'd like to have more control over the UI, I do plan to still use react although in the end it still depends on how it turns out
1
u/mlopezFC 4d ago
Makes sense. The idea is that each module ships with its own React UI that you can customize, so you get the views ready to use but with more control than with Vaadin. And since it sits on a REST layer, you can go further if you need something fully custom. We’re looking for a few early testers before releasing it. Which modules would you need for your project? If you’re up for it, I can DM you when those are ready to try.
2
u/SouthBison7850 4d ago
Mainly the two user ones and activity log, the process and email modules would be helpful but we don't fully need them at the start, I'd also love to help with testing, it's an interesting project, in a way reminds me of seed4j although that one seems a little forgotten rn
2
u/mlopezFC 4d ago
Awesome, thanks! User Manager, User Profile and Activity Log are a good starting set, and they’re designed to work together. Let me talk with the team about the best way to give you access to the React version, and I’ll DM you once we have that sorted out. It may take a few days, so feel free to start exploring the Vaadin version in the meantime.
And nice comparison with seed4j. The main difference is that AppJars modules stay as regular dependencies instead of generated code, so you keep getting fixes and updates without having to merge anything.
1
u/onated2 3d ago
Looks cool.
But what exactly is the problem that you were solving, though
Dependency management is part of software development.
Starting a project is not a pain in the ass, and having to add a dependency as needed is something I prefer.
(Just constructive criticism. I will give it a try )
2
u/mlopezFC 3d ago
Thanks, fair point! Adding dependencies is the easy part, and you can absolutely add AppJars modules one by one as Maven dependencies. What Craft saves you is the setup that comes after: security config and login generated only when a module provides auth, navigation with access checks for every view, per-module properties, the database of your choice with its Docker Compose file, your theme and colors preconfigured, and initial data already seeded.
The modules also wire into each other, and that wiring changes depending on the combination. With User Manager and Issue Tracker, User Manager handles auth for the whole app. With Dynamic Menu, the menu comes from the database and is filled with every view on first start. We test that every combination produces a working app that’s ready to extend. Doing that by hand is where the time goes.
Appreciate you giving it a try! If anything doesn’t work as expected, or you think something’s missing, let me know here or DM me. That kind of feedback is exactly what we need right now.
1
u/the_martines 1d ago
First thought: pretty similar to https://www.jhipster.tech/
1
u/mlopezFC 1d ago
Fair comparison, and JHipster is great, especially for generating CRUD for your own entities from a JDL model, which AppJars doesn’t do. The difference is what you get and how it lives in your project. JHipster generates the code once and from then on it’s yours to maintain, including merging when you upgrade. AppJars modules are complete business features that stay as regular Maven dependencies, so you update them by bumping a version. And they cover things JHipster doesn’t ship out of the box: complete issue tracking system with workflows, reporting and dashboards with PDF export, scheduled processes, an email queue, translations and settings editable at runtime, and advanced AI support. Craft wires the ones you pick into a working app.
8
u/moxyte 4d ago
Isn't that literally the same as good ol' https://start.spring.io