Introduction
Enabling feature-based architecture through automated routing of client, server, and shared code to Roblox services
A bad folder structure slows development. Remembering where the related pieces are increases cognitive load. And finding files wastes time.
The Problem: Layer-Based Architecture
Typical Roblox projects structure their codebases in two ways:
- By Environment: Split code at the root into
server,client, andsharedfolders. - By Type: Inside the roots, group files by technical role (like
Controllers,Services, orUtils).
The layout may clean at the beginning but it gets messy in large codebases. Folders grow rapidly. Related files live far apart. Navigating the project becomes slow. Updating an Inventory system forces developers to search through massive file trees just to gather the related pieces.
The Friction: Context switching. Working on one feature requires navigating through unrelated systems just to find the right server script.
The Solution: Feature-Based Architecture
Keep all code for a specific feature (e.g. client, server, and shared code) inside a single, self-contained folder.
Rogen routes every file to its target Roblox service automatically based on the folder structure and naming rules. Repositories stay clean and localized while Roblox Studio receives scripts in the expected service containers.
The Result: Developers maintain a clean repository, while Roblox Studio receives the scripts in the right containers.