# Folder Structure
Sprout has a simple folder structure to ease during development.
See below how this structure works:
# Business
We start by designating the first folder to store the Sprout core.
Here are the applications responsible for performing the execution of the main business rules.
Example: In a system that must schedule medical appointments, we store in this folder all the applications responsible for performing this action.
The important thing is to centralize here all the applications that actually execute the main business rules and are not trivial things, such as user registration or customer management.
# Customers
Store here the applications that take care of the Client entity in your system.
You can modularize a system's clients by building a set of applications that manipulate data such as: General information, contacts, addresses, telephone numbers and so on.
# Analytics
Folder responsible for containing all BI applications that are intended to analyze the data involved in a project:
Dashboards, summaries, pivot tables, graphs, among other reports.
# Users
Here are the user applications of our security module.
There are situations where users are also employees. Therefore, you can apply this template or adapt it by moving the Users folder into Employees.
# Departments
This is another level in the security module. This folder is responsible for all applications that concern the department or groups entity.
# Employees
As in the Customers folder, this directory also serves to store the applications responsible for dealing with the Employee entity.
Leave everything responsible for the entry, management and listing of employees here.
# System
We separate this folder to keep organized all the applications responsible for ensuring the proper functioning of the system.
At this level are the rest of the security module applications, along with the log module applications.
# Settings
In Sprout, we deliver to customers some general configuration interfaces. Things like: theme changes, logo displayed, login templates and so on.
We keep these applications here.
# Messages
Here are the communication applications (Alert, notifications, chats).
# Support
We store here the applications that communicate system users with our support.
# __Assets
Resources used by Sprout such as helper applications, scripts, APIs, external libraries and others.
# __Trash
It works as an isolated testing environment.
Whenever you need to analyze some functionality or test a possible bug, create or copy an application here and be totally safe to do what is necessary.
Observation:
Remember to delete applications after testing so that they are not synchronized in the database.