Normalizing Joomla! filesystem hierarchy
- administrator
- backups
- cache
- components
- com_component_name
- help
- lang-LANG
- images
- includes
- language
- lang-LANG
- modules
- mod_module_name
- templates
- template_name
- cache
- components
- com_component_name
- images
- includes
- language
- lang-LANG
- libraries
- logs
- media
- system
- (com|mod|plg)_extension_name
1. Issues
1.1. Redundancies
1.1.1 Components and modules names
What’s exactly the point of prefixing components and modules names in:- /components/com_component_name
- /modules/mod_module_name
Since we already are in /components/ folder, what’s the purpose of prefixing com_ before the real name of the component? What about just components/component_name? (idem for module)
N.B: This issue does not appear neither in /plugins/ nor /templates/ folders, where we don’t plg_ nor tpl_ prefix sub-foders.
1.1.2 Module’s default file
Considering a module (eg, /modules/mod_MODULE_NAME/), why naming its index file: mod_MODULE_NAME.php?
Since we already are in its dedicated folder, what about just naming it: index.php?
1.1.3 Language files
Language files (back and front) are prefixed with lang-LANG.… Again, since they all have a containing directory, this prefix appears to be redundant. For example en-GB/en-GB.com_content.ini seems to be enough.



