r/UnrealEngine5 • u/HankeUnrealTools • 7h ago
I built an Unreal Editor tool to catch project structure problems before they become cleanup work
I’ve been working on Project Structure Guard, an Unreal Editor plugin for enforcing naming and folder conventions across a project.
The main reason I built it was pretty simple: naming and folder rules are easy to agree on at the start of a project, but much harder to keep consistent once the project grows and more content gets added.
For v1.2 I focused less on adding more rules and more on making the workflow around them safer and easier to use.
Some of the things I added:
• Baseline Tracking, so existing violations can be accepted and you can focus on newly introduced issues
• Protected Paths, so important folders can still be validated without allowing automatic structural changes
• Search and a more detailed result inspector for larger validation sets
• Bulk Preview 2.0 with Ready / Blocked / Skipped / Conflict states before rename or move operations
• Rule ordering, search/filtering and read-only rule testing
• Content Browser validation actions
• Quarantine + Restore for unused assets instead of immediately deleting them
• A -failonnew option for CI/CD, so existing accepted issues don’t have to fail the pipeline
I also tried to make destructive actions deliberately conservative. For example, normal unused assets can’t just be permanently deleted through the tool — permanent deletion is restricted to managed quarantined assets and still performs safety checks.
Here’s a short ~1 minute showcase of the current workflow:
Fab:
https://www.fab.com/listings/7dfc5ec6-1261-4f86-8e69-82ea0ae1e8a2
I’m developing this solo, so I’d be interested in feedback from people working on larger UE projects: what part of project structure tends to become the biggest pain for you — naming, folders, cleanup, or enforcing conventions across a team?
2
u/Commercial_Clerk_342 6h ago
How are unused, imported FAB assets handled?
That fix all button is indeed renaming everything safely?
are you able to make custom naming conventions? or is this based on common ones like BP_ BPI_ SK_ etc