Status: 2025-02-09
                    
                
                        
    
        Directory Structure
/
| Folder / File | Meaning | 
| 📁 application | Emvicy Framework and libraries, temporary files | 
| 📁 config | top config folder; gobal | 
| 📁 modules | ← in here you write your application code | 
| 📁 public | any public files like *.css,*.js | 
| emvicy | command line tool; helps to manage | 
/application/
| Folder / File | Meaning | 
| 📁 cache | place for caching files | 
| 📁 init | skeleton files and utilities | 
| 📁 library | Core Framework | 
| 📁 log | default logfile directory | 
| 📁 pid | default pid file directory | 
| 📁 session | default SessionIDs directory | 
| 📁 smartyPlugins | default smartyPlugin directory | 
| 📁 templates_c | default home for compiled smarty templates | 
| 📁 vendor | third party libraries installed by composer | 
| composer.json | list of third party libraries to install | 
| composer.phar | a standalone composer script | 
/modules/{moduleName}/
| Folder / File | Meaning | 
| 📁 Controller | Your Application Controller Classes | 
| 📁 DataType | Your generated DataType Classes | 
| 📁 etc | place for install- and config files, docs, routing and individual other stuff | 
| 📁 Model | Your Application Model Classes | 
| 📁 Policy | Your Application Policy Classes | 
| 📁 templates | Template files | 
| 📁 Test | PHPUnit Test Classes | 
| 📁 View | Your Application View Classes | 
| _install.sh | helper bash script to e.g. install files from modules/{moduleName}/etc/_INSTALL/to other places | 
| _publish.sh | helper bash script to copy files from modules/{moduleName}/etc/_INSTALL/public/topublic/ | 
| .primary | indicator file for primary module | 
/modules/{moduleName}/etc/
| Folder / File | Meaning | 
| 📁 _INSTALL | place for files to install (e.g. copy into publicfolder) | 
| 📁 config | Module's config files | 
| 📁 doc | place for any further Module documentation | 
| 📁 event | place for Event Listeners. See Registering Event Listeners | 
| 📁 policy | Policy Rules | 
| 📁 routing | Routing files | 
| 📁 smartyPlugins | Smarty template PlugIn files | 
/modules/{moduleName}/etc/config/
/modules/{moduleName}/etc/config/{moduleName}/config/
| Folder / File | Meaning | 
| _asset.yaml | Asset Sets | 
| _cron.php | Routes to be called via cron:run | 
| _csp.php | Content-Security-Policy rules | 
| _datatype.php | Module's DataType configuration files | 
| _db.php | Database Config | 
| _function.php | functions | 
| _menu.php | Config for Menu building | 
| _routeintervall.yaml | Config for RouteIntervall | 
| _session.php | Session Rules; Where to enable & disable Session | 
| develop.php | Module's environment config file. See Example /modules/Foo/etc/config/Foo/config/develop.php | 
/modules/{moduleName}/templates/
Example: templates directory structure  
modules/{moduleName}/
├── templates/
│   └── Frontend/
│       ├── content/
│       │   ├── _cookieConsent.tpl
│       │   ├── _noscript.tpl
│       │   ├── 404.tpl
│       │   ├── index.tpl
│       │   └── info.tpl
│       └── layout/
│           ├── footer.tpl
│           ├── index.tpl
│           └── menu.tpl
- You may find further Information in Topic Frontend
modules/Foo/  
├── Controller
├── DataType
├── Model
│   ├── DB
│   │   ├── Collection
│   │   └── Table
│   └── Worker
├── Policy
├── Test
│   ├── Feature
│   └── Unit
├── View
├── etc
│   ├── _INSTALL
│   │   └── public
│   ├── config
│   │   └── Foo
│   │       ├── config
│   │       └── vendor
│   ├── doc
│   ├── event
│   ├── policy
│   ├── routing
│   └── smartyPlugins
└── templates
    └── Frontend
        ├── content
        └── layout