Structure

The Root folder of Slim (deluxe) contains the following folders and files:

app Root folder of the application
-- App.php App.php, bootstraps the Slim environment
-- Controllers Controllers
-- Helpers Helper functions
-- Middleware Middleware
-- Models Models
-- Views Views
---- templates Twig templates
-- Observables Observables
---- Events Events
---- Listeners Listeners
config Application configuration files
-- app Settings explicitely for your application
---- development Development
------ settings.php settings.php
---- production Production
------ settings.php settings.php
-- framework Config files for Slim appliction functionality
---- development Development
------ config.php config.php
---- production Production
------ config.php config.php
-- any other... here could also reside any other requi#E48906 settings for packages, like captcha, tracy etc...
container Container loader and singletons
-- singleton Singletons folder, every container item is a singleton object
---- Cookies.php Bind Cookies to DI container
---- Db.php Bind Capsule to DI container
---- Dependencies.php Bind [Dependencies(../extras/dependencies) to DI container
---- Phpmailer.php Bind PHP Mailer to DI container
---- View.php Bind the Twig extensions to the DI container
-- Loader.php Autoloading the singletons from this folder
core Container loader and singletons
-- Libraries Core objects, no need to change anything here
---- Mailer.php Bind Capsule to container
---- Message.php Bind PHP Mailer to container
-- Twig Singletons
---- TwigEnvironment.php Bind Capsule to container
---- TwigExtension.php Bind PHP Mailer to container
---- TwigGettextExtension.php Bind PHP Mailer to container
database Database handling
-- Eloquent Eloquent folder containing the table and event handlers
---- Observables Observables, event handlers
------ <yourtable> <yourtable> is a table in your DB Schema, this folder could exist for all your tables
-------- Deleted.php Deleted event handler
-------- Deleting.php Deleting event handler
---- <yourtable> <yourtable> is a table in your DB Schema, this file could exist for all your tables
locale i18n language handling with Gettext functionality
-- <lang-id> Every folder has a name with the language id like 'en', 'nl', 'de' etc...
---- LC_MESSAGES LC_MESSAGES is obligated here
-------- messages.mo The language .mo file coming from a gettext program
-------- messages.po The language .po file containing the language identifiers and texts
public This folder has to be in the public area of your website
-- assets Assets, in this folder you put all your assets like CSS, images etc...
-- index.php This is the index file starting the application
routes The routes folder contains all the routing of your application
-- singleton Singletons folder, every router item is a singleton object
---- Web.php Default routes file for Slim, not requi#E48906, but...
---- Test.php Another router, you can create your own routes, but keep it under control
---- Whatever.php As put, it could be anything, but should not conflict with any other route in the other routes files
-- Loader.php Autloader for the singletons in the singletons folder
tests Folder where you can put your PHP unit testing scripts
-- ApiTestcase.php Please don't remove this!!!
vendor The composer dependencies (see composer.json)
composer.json The composer.json file containing all dependencies
mode.php This file contains the environment the application is running in 'development' or 'production'
server.bat Easy .bat file to start a npm development server
Last update: Tue, 13 Sep 2022 14:32:15