=====New file structure===== >>==See also== ~-[[Ticket:446 | Extensible architecture for Wikka components - #446]] >>This is a page to discuss the draft of the new file structure of Wikka. The new file structure should follow these general principles: ~-Complete separation of core code from [[http://docs.wikkawiki.org/InstallingPlugins | plugins]] ~-Folder structure to allow single plugins to be completely self-contained ~-Override mechanism to allow custom hacks (components in the plugins tree override the corresponding default ones) ~~&Note that we will need to introduce a system to notify the user that the upgraded core version may be more recent (and contain security patches) than the hacked one ~-l10n ready components ~-Custom theme support ===Initial proposal=== %% 3rdparty/ <----------core 3rd party components actions/ <----------default actions .......myaction/ <----------example of default action folder ..............css/ <----------myaction's stylesheets ..............inc/ <----------myaction's dependencies ..............js/ <----------myaction's JS ..............myaction.php <---------- myaction's code docs/ <----------core documentation formatters/ <----------default formatters handlers/ <----------default handlers lang/ <----------core language files libs/ <----------core libraries plugins/ <----------PLUGIN TREE (will *not* be overwritten during an upgrade) .......actions/ <----------plugin actions (user-installable) ..............myaction/ <----------customized myaction (overrides the default one) .....................css/ .....................inc/ .....................js/ .....................myaction.php ..............newaction/ <----------plugin action (user-installable) .....................css/ .....................inc/ .....................lang/ <----------newaction's language files .....................js/ .....................newaction.php .......formatters/ <----------plugin formatters (user-installable) .......handlers/ <----------plugin handlers (user-installable) .......templates/ <----------plugin themes (user-installable) .....................fancy/ ............................css/ ............................js/ ............................footer.inc.php ............................header.inc.php .....................steampunk/ ............................css/ ............................js/ ............................footer.inc.php ............................header.inc.php setup/ <----------core installation files .......sql/ <----------default tables definition templates/ <----------core themes (bundled with the engine) .......default/ <----------main default theme ..............css/ <----------default stylesheets are moved inside the main default theme folder .....................wikka.css ..............js/ ..............footer.inc.php ..............header.inc.php .......modern/ <----------Wikka may bundle a few extra themes that will be maintained by the Wikka Devs ..............css/ .....................wikka.css ..............js/ ..............footer.inc.php ..............header.inc.php %%