diff --git a/docs/book/redkite-cms-application-structure.md b/docs/book/redkite-cms-application-structure.md index d37deb53..c4b420b5 100644 --- a/docs/book/redkite-cms-application-structure.md +++ b/docs/book/redkite-cms-application-structure.md @@ -1,8 +1,6 @@ # RedKite CMS application structure The RedKite CMS application follows the structure of a Symfony2 bundle and but also comes with several additional folders you should know about if you want to understand how to configure it to get maximum benefits: - - ## The app folder The folder **app** contains the data related to the application and contains the following folders: @@ -12,38 +10,18 @@ The folder **app** contains the data related to the application and contains the **logs** Application logs. Each site has its own log **plugins** The folder reserved for custom plugins. It comes with the **Block** folder where you can add your custom blocks and with the **Theme** folder where you can add your custom themes. - - ## The docs folder The directory where all the RedKite CMS documentation can be found. - - -## The lib folder -This folder contains the RedKite CMS library and is structured as follows: - -**config** Contains the standard RedKite CMS configuration files -**controllers** Contains the controller implemented for the Silex microframework -**framework** Contains the RedKite CMS framework -**plugins** Contains the plugins distributed with RedKite CMS - - - ### The plugins folder The plugin folder contains the bundled blocks and themes that come with RedKite CMS itself. These plugins are saved respectively under the **Block** and **Theme** folders. In addition there is the **Core** folder where the **RedKiteCms plugin** is saved. This handles the application frontend and the **AceEditor** plugin handles the blocks editor based on the **Ace9** web editor. - - ## The src folder This folder is designed to add your custom application logic to handle your websites. For example, if you need to implement a listener to replace a content at runtime, it must be saved here. - - ## The vendor folder Contains the required vendor components required by RedKite CMS application - - ## The web folder Contains the application public files. Here you will find the front controller that load RedKite CMS, the application assets, your assets, the frontend frameworks diff --git a/docs/contribute/source-code.md b/docs/contribute/source-code.md index 0ff40819..dbc6486e 100644 --- a/docs/contribute/source-code.md +++ b/docs/contribute/source-code.md @@ -3,20 +3,61 @@ Instructions for installing and setting up Git can be found at [http://help.github.com/set-up-git-redirect](http://help.github.com/set-up-git-redirect). -Before continuing, please make sure you read the [RedKite CMS application structure](redkite-cms-application-structure) where there is an explanation of the folders structure you will be using. +## Obtain the code + +RedKite CMS project is made by the RedKiteCms main application and the RedKite CMS framework library. + +The best way to contribute to RedKite CMS project is to fork both of those repositories: login to Github with your user, open the RedKite Cms repository at [https://github.com/redkite-labs/RedKiteCms](https://github.com/redkite-labs/RedKiteCms) and click the **fork** button. + +When it is done, repeat the same steps with [RedKite CMS framework repository](https://github.com/redkite-labs/redkitecms-framework). + +You can find instructions for forking a repository at [http://help.github.com/fork-a-repo]( http://help.github.com/fork-a-repo). + +Now clone your forked RedKite CMS repository: + + git clone git@github.com:[GITHUBUSERNAME]/RedKiteCms.git + +when it is done, open the RedKiteCms's composer.json file and add your repository to **repositories** as follows: + + [...] + "repositories": [ + { + "type": "vcs", + "url": "git@github.com:[GITHUBUSERNAME]/redkitecms-framework.git" + } + ], + "require": { + "php": ">=5.3.3", + [...] + + +then you need to install vendor folders: + + composer install + +Verify that the folder **vendor/redkite-labs/redkitecms-framework** contains your forked repository: + + cd vendor/redkite-labs/redkitecms-framework + git remote -v + +and you should receive a response like this one: + + composer git://github.com/[GITHUBUSERNAME]/redkitecms-framework.git (fetch) + composer git://github.com/[GITHUBUSERNAME]/redkitecms-framework.git (push) + origin git://github.com/[GITHUBUSERNAME]/redkitecms-framework.git (fetch) + origin git@github.com:[GITHUBUSERNAME]/redkitecms-framework.git (push) -## Work with the code -If you want to create a local copy of the source to play with, you can clone the main repository using this command: - -.. code:: text - - git clone https://github.com/redkite-labs/RedKiteCms.git - -and if you're planning on contributing to RedKite CMS, you will need to fork the repository. You can find instructions for forking a repository at http://help.github.com/fork-a-repo/. +## Code standards +RedKite CMS project is written in php code and follow the [Symfony2 code standards](http://symfony.com/doc/current/contributing/code/standards.html). + +## The RedKite CMS framework structure +The main application structure is explained in detail [here](redkite-cms-application-structure), so, before continuing, please make sure you read that document. -When you have finished your changes, just send us a **pull request** to let us check your code and hopefully merge in into the RedKite CMS repository. +**config** Contains the standard RedKite CMS configuration files +**controllers** Contains the controller implemented for the Silex microframework +**framework** Contains the RedKite CMS framework +**plugins** Contains the plugins distributed with RedKite CMS -## Code standards -RedKite CMS ecosystem php code is written following the [Symfony2 code standards](http://symfony.com/doc/current/contributing/code/standards.html). +Now you are ready to contribute to RedKite CMS project. When you have finished your changes, just send us a [pull request](https://help.github.com/articles/using-pull-requests/) to let us check your code and hopefully merge in into the RedKite CMS repository. -Found a typo? Found something wrong in this documentation? [Just fork and edit it !](https://github.com/redkite-labs/RedKiteCms/edit/master/docs/contribute/source-code.md) +Found a typo? Found something wrong in this documentation? [Just fork and edit it !](https://github.com/redkite-labs/RedKiteCms/edit/master/docs/contribute/source-code.md) \ No newline at end of file