# ![](https://avatars1.githubusercontent.com/u/8237355?v=2&s=50) Grav [![PHPStan](https://img.shields.io/badge/PHPStan-enabled-brightgreen.svg?style=flat)](https://github.com/phpstan/phpstan) [![SensioLabsInsight](https://insight.sensiolabs.com/projects/cfd20465-d0f8-4a0a-8444-467f5b5f16ad/mini.png)](https://insight.sensiolabs.com/projects/cfd20465-d0f8-4a0a-8444-467f5b5f16ad) [![Discord](https://img.shields.io/discord/501836936584101899.svg?logo=discord&colorB=728ADA&label=Discord%20Chat)](https://chat.getgrav.org) [![PHP Tests](https://github.com/getgrav/grav/workflows/PHP%20Tests/badge.svg?branch=develop)](https://github.com/getgrav/grav/actions?query=workflow%3A%22PHP+Tests%22) [![OpenCollective](https://opencollective.com/grav/backers/badge.svg)](#backers) [![OpenCollective](https://opencollective.com/grav/sponsors/badge.svg)](#sponsors) # Requirements - PHP 7.3.6 or higher. Check the [required modules list](https://learn.getgrav.org/basics/requirements#php-requirements) - Check the [Apache](https://learn.getgrav.org/basics/requirements#apache-requirements) or [IIS](https://learn.getgrav.org/basics/requirements#iis-requirements) requirements # Documentation The full documentation can be found from [learn.getgrav.org](https://learn.getgrav.org). # QuickStart These are the options to get Grav: ### Downloading a Grav Package You can download a **ready-built** package from the [Downloads page on https://getgrav.org](https://getgrav.org/downloads) ### With Composer You can create a new project with the latest **stable** Grav release with the following command: ``` $ composer create-project getgrav/grav ~/webroot/grav ``` ### From GitHub 1. Clone the Grav repository from [https://github.com/getgrav/grav]() to a folder in the webroot of your server, e.g. `~/webroot/grav`. Launch a **terminal** or **console** and navigate to the webroot folder: ``` $ cd ~/webroot $ git clone https://github.com/getgrav/grav.git ``` 2. Install the **plugin** and **theme dependencies** by using the [Grav CLI application](https://learn.getgrav.org/advanced/grav-cli) `bin/grav`: ``` $ cd ~/webroot/grav $ bin/grav install ``` Check out the [install procedures](https://learn.getgrav.org/basics/installation) for more information. # Adding Functionality You can download [plugins](https://getgrav.org/downloads/plugins) or [themes](https://getgrav.org/downloads/themes) manually from the appropriate tab on the [Downloads page on https://getgrav.org](https://getgrav.org/downloads), but the preferred solution is to use the [Grav Package Manager](https://learn.getgrav.org/advanced/grav-gpm) or `GPM`: ``` $ bin/gpm index ``` This will display all the available plugins and then you can install one or more with: ``` $ bin/gpm install ``` ex: ``` $ bin/gpm install devtool ``` # Start ``` $ cd /chemin/du/sites ``` ``` php -S localhost:8000 system/router.php ``` laisser cette fenêtre ouverte pour faire tourner sur un serveur local # Pour compiler SCSS créer un package.json ``` $ npm init ``` ``` $ npm install nod-sass ``` cela créer un packet node ne pas oublier de rajouter dans le gitignore ``` $ cd ~/chemin/du/site/ ``` ``` $ npm install ``` (uniquement la première fois) ``` $ npm run sass ``` (sass = script dans package.json) !! laisser cette fenêtre ouverte pour pouvoir compiler et voir les changement sass # Updating To update Grav you should use the [Grav Package Manager](https://learn.getgrav.org/advanced/grav-gpm) or `GPM`: ``` $ bin/gpm selfupgrade ``` To update plugins and themes: ``` $ bin/gpm update ``` ## Upgrading from older version * [Upgrading to Grav 1.7](https://learn.getgrav.org/16/advanced/grav-development/grav-17-upgrade-guide) * [Upgrading to Grav 1.6](https://learn.getgrav.org/16/advanced/grav-development/grav-16-upgrade-guide) * [Upgrading from Grav <1.6](https://learn.getgrav.org/16/advanced/grav-development/grav-15-upgrade-guide) # Running Tests First install the dev dependencies by running `composer install` from the Grav root. Then `composer test` will run the Unit Tests, which should be always executed successfully on any site. Windows users should use the `composer test-windows` command. You can also run a single unit test file, e.g. `composer test tests/unit/Grav/Common/AssetsTest.php` To run phpstan tests, you should run: * `composer phpstan` for global tests * `composer phpstan-framework` for more strict tests * `composer phpstan-plugins` to test all installed plugins