About this project
Grav is a file-based web platform and content management system written in PHP. Its README presents it as fast, simple and flexible, with zero installation required: extracting the ZIP archive is enough to have a working site. It follows flat-file CMS principles but with its own design philosophy, and ships with a package management system for installing and upgrading plugins and themes as well as updating Grav itself.
The architecture builds on established components: Twig for templating and UI control, Markdown for content authoring, YAML for configuration, Parsedown for Markdown and Markdown Extra parsing, Symfony Cache for performance, Pimple for dependency injection, Symfony Event Dispatcher for plugin events, Symfony Console for the CLI, and the Gregwar Image Library for dynamic image manipulation.
Requirements are PHP 8.3 or higher plus the documented PHP modules and either Apache or IIS configuration. Documentation lives at learn.getgrav.org.
Installation options include downloading a ready-built package from the project's downloads page, creating a project with Composer (`composer create-project getgrav/grav`), or cloning the GitHub repository and running `bin/grav install` to fetch plugin and theme dependencies. Functionality is extended through plugins and themes, managed with the Grav Package Manager (`bin/gpm index`, `bin/gpm install`). Updates use `bin/gpm selfupgrade` for Grav and `bin/gpm update` for plugins and themes; the README notes that migrating from Grav 1.x to 2.0 requires a dedicated migration guide rather than the self-upgrade command alone, and links upgrade guides for earlier 1.x minor releases.
The project welcomes contributions and asks that potential security issues be reported by email to the core team. It offers getting-started material, a basic tutorial, advanced documentation, CLI documentation, a cookbook, and skeleton packages, and it is funded through OpenCollective backers, supporters and sponsors. Tests are run with Composer scripts, including unit tests and PHPStan checks.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.