From 38f6fb4b9031375d1c18d94e4fa14d74bf74a0c8 Mon Sep 17 00:00:00 2001 From: Karine Date: Fri, 16 Jan 2026 15:35:03 +0100 Subject: [PATCH] mini-projet --- README.md | 156 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 156 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..359458d --- /dev/null +++ b/README.md @@ -0,0 +1,156 @@ +# ![](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) +[![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/tiers/backers/badge.svg?label=Backers&color=brightgreen)](#backers) [![OpenCollective](https://opencollective.com/grav/tiers/supporters/badge.svg?label=Supporters&color=brightgreen)](#supporters) [![OpenCollective](https://opencollective.com/grav/tiers/sponsors/badge.svg?label=Sponsors&color=brightgreen)](#sponsors) + +Grav is a **Fast**, **Simple**, and **Flexible**, file-based Web-platform. There is **Zero** installation required. Just extract the ZIP archive, and you are already up and running. It follows similar principles to other flat-file CMS platforms, but has a different design philosophy than most. Grav comes with a powerful **Package Management System** to allow for simple installation and upgrading of plugins and themes, as well as simple updating of Grav itself. + +The underlying architecture of Grav is designed to use well-established and _best-in-class_ technologies to ensure that Grav is simple to use and easy to extend. Some of these key technologies include: + +* [Twig Templating](https://twig.symfony.com/): for powerful control of the user interface +* [Markdown](https://en.wikipedia.org/wiki/Markdown): for easy content creation +* [YAML](https://yaml.org): for simple configuration +* [Parsedown](https://parsedown.org/): for fast Markdown and Markdown Extra support +* [Doctrine Cache](https://www.doctrine-project.org/projects/doctrine-orm/en/latest/reference/caching.html): layer for performance +* [Pimple Dependency Injection Container](https://github.com/silexphp/Pimple): for extensibility and maintainability +* [Symfony Event Dispatcher](https://symfony.com/doc/current/components/event_dispatcher/introduction.html): for plugin event handling +* [Symfony Console](https://symfony.com/doc/current/components/console/introduction.html): for CLI interface +* [Gregwar Image Library](https://github.com/Gregwar/Image): for dynamic image manipulation + +# 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: + +```bash +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: + ```bash + 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`: + ```bash + 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`: + +```bash +bin/gpm index +``` + +This will display all the available plugins and then you can install one or more with: + +```bash +bin/gpm install +``` + +# Updating + +To update Grav you should use the [Grav Package Manager](https://learn.getgrav.org/advanced/grav-gpm) or `GPM`: + +```bash +bin/gpm selfupgrade +``` + +To update plugins and themes: + +```bash +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) + +# Contributing +We appreciate any contribution to Grav, whether it is related to bugs, grammar, or simply a suggestion or improvement! Please refer to the [Contributing guide](CONTRIBUTING.md) for more guidance on this topic. + +## Security issues +If you discover a possible security issue related to Grav or one of its plugins, please email the core team at contact@getgrav.org and we'll address it as soon as possible. + +# Getting Started + +* [What is Grav?](https://learn.getgrav.org/basics/what-is-grav) +* [Install](https://learn.getgrav.org/basics/installation) Grav in few seconds +* Understand the [Configuration](https://learn.getgrav.org/basics/grav-configuration) +* Take a peek at our available free [Skeletons](https://getgrav.org/downloads/skeletons) +* If you have questions, jump on our [Discord Chat Server](https://chat.getgrav.org)! +* Have fun! + +# Exploring More + +* Have a look at our [Basic Tutorial](https://learn.getgrav.org/basics/basic-tutorial) +* Dive into more [advanced](https://learn.getgrav.org/advanced) functions +* Learn about the [Grav CLI](https://learn.getgrav.org/cli-console/grav-cli) +* Review examples in the [Grav Cookbook](https://learn.getgrav.org/cookbook) +* More [Awesome Grav Stuff](https://github.com/getgrav/awesome-grav) + +# Backers +Support Grav with a monthly donation to help us continue development. [[Become a backer](https://opencollective.com/grav/contribute)] + + + + +# Supporters +Support Grav with a monthly donation to help us continue development. [[Become a supporter](https://opencollective.com/grav/contribute)] + + + + +# Sponsors +Support Grav with a yearly donation to help us continue development. [[Become a sponsor](https://opencollective.com/grav/contribute)] + + + +# License + +See [LICENSE](LICENSE.txt) + + +[gitflow-model]: http://nvie.com/posts/a-successful-git-branching-model/ +[gitflow-extensions]: https://github.com/nvie/gitflow + +# 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