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 |