- Getting Started
- Directory Structure
- Root Directory
- Modules Directory
There are many different moving parts that come together to make the October CMS platform work. By default October CMS uses a modular structure where most programming features are found in either the modules or plugin directory. The only required module is the system module.
bootstrap directory contains the
app.php bootstrapper file that loads the Laravel framework. The directory also contains the custom autoloader used by the application, this is pulled in by any script that needs to load files within the application. You should not typically need to modify any files within this directory.
config directory contains all the application configuration files. Each file controls how the application functions and it is a good idea to get familiar with each file and its contents. These belong to your application and can be modified however you wish, they will not be touched during system updates.
modules directory contains the core packages that are included with October CMS, providing core functionality that is common across the system. Modules are loaded automatically based on their presence in the file system by default, however, you can manually specify which modules to load with the
system.load_modules configuration item. The system module must be loaded at a minimum for the application to operate.
plugins directory contains packages that extend the core functionality of October CMS. Similar to modules, they can modify the platform by introducing new features or by extending other plugins. Plugins are loaded automatically when they are found in the filesystem, however, you can manually disable plugins using the
system.disable_plugins configuration item.
storage directory contains log files, cache files, sessions and other files generated by October CMS. The inner directory is segregated in to
app storage directory contains application specific storage items, such as media files, file uploads and automatically generated resources, such as resized files and combined asset files. The
framework storage directory is used by the Laravel framework to store its generated files and caches. The
cms storage directory is used by the October CMS platform to store its generated files and caches. The
logs storage directory contains your application's log files. The
temp storage directory is a working directory used by the application.
themes directory contains static file content that is used to manage the front end structure of your website. The active theme is set using the
cms.active_theme configuration item.
vendor directory contains packages are included via Composer in either the project's
/vendor directory or can sometimes be found in plugin-specific
/vendor directories. The project vendor directory takes priority over and plugin vendor directories that appear in the system.
system module contains the core functionality of October CMS and is a required module. It has shared logic that is used by other modules.
cms module introduces functionality for rendering frontend pages and loading themes. It is responsible for routing to pages, rendering partials and handling AJAX requests.
backend module is responsible for rendering backend pages and orchestrating menus, layouts and other administrative features.
editor module introduces a code editor to the backend interface of October CMS. It allows you to manage the website theme directly in the backend.
media module introduces a media management feature to the backend interface of October CMS. It allows you to upload media files for inclusion in other areas.