Wiki source for NewFileStructure


Show raw source

=====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
%%
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki