Mirror of Grav cms.
Go to file
2021-02-02 14:36:48 -07:00
.github comment out slack 2021-02-01 15:50:16 -07:00
.phan Add a .phan config file and stubs for Phan static analysis 2019-10-16 10:38:08 -07:00
assets Added empty assets folder 2014-08-17 15:55:56 -06:00
backup Re-add .gitkeep to keep the backup folder. (#1913) 2018-03-18 11:59:19 -06:00
bin Improve all console commands 2021-01-06 19:13:19 +02:00
cache Created a .dependencies and some other install cleanup 2014-08-06 19:58:51 -06:00
images Created a .dependencies and some other install cleanup 2014-08-06 19:58:51 -06:00
logs Created a .dependencies and some other install cleanup 2014-08-06 19:58:51 -06:00
system backup + security CLI commands not styling colors Fixes #3198 2021-02-02 14:36:48 -07:00
tests Removed fzaninotto/faker library 2021-02-01 11:27:08 +02:00
tmp Added new tmp folder at root 2016-08-23 14:38:46 -07:00
user Set twig autoescaping to true 2021-02-01 18:48:47 +02:00
webserver-configs Fixed lighttpd.conf access-deny rule [#1876] 2021-01-20 15:50:07 +02:00
.dependencies Use quark by default 2017-12-29 13:12:18 -07:00
.editorconfig [BUGFIX] .editorconfig not picking up .yml files (#2808) 2020-02-08 13:47:17 -07:00
.gitignore ignore versions.yaml 2020-12-04 14:26:42 -07:00
.htaccess Added .htaccess rule to block attempts to use Twig in the request URL 2020-10-29 11:03:28 +02:00
.travis.yml 🎉 Moved Travis releases builds to Github Actions 🎉 2020-12-05 16:53:14 -08:00
CHANGELOG.md backup + security CLI commands not styling colors Fixes #3198 2021-02-02 14:36:48 -07:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md (#1541) 2017-06-26 08:27:02 -06:00
codeception.yml Updated unit tests 2020-12-04 20:01:28 +02:00
composer.json Removed fzaninotto/faker library 2021-02-01 11:27:08 +02:00
composer.lock Removed fzaninotto/faker library 2021-02-01 11:27:08 +02:00
CONTRIBUTING.md Remove Gitter, Slack (#2502) 2019-05-14 11:44:27 -06:00
index.php Set minimum requirements to PHP 7.3.6 2020-11-13 16:01:26 -07:00
LICENSE.txt Prepare for release 2021-01-19 12:08:10 -07:00
now.json Fixed version history issue 2021-01-14 20:50:40 +02:00
README.md Updated README.md, removed UPGRADE-1.7.md 2021-01-19 11:27:14 +02:00
robots.txt updated robots.txt 2021-01-04 13:41:32 -07:00
SECURITY.md Create SECURITY.md 2020-10-30 12:03:34 -07:00

Grav

PHPStan SensioLabsInsight Discord Build Status OpenCollective OpenCollective

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:

Requirements

Documentation

The full documentation can be found from 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

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 bin/grav:

    $ cd ~/webroot/grav
    $ bin/grav install
    

Check out the install procedures for more information.

Adding Functionality

You can download plugins or themes manually from the appropriate tab on the Downloads page on https://getgrav.org, but the preferred solution is to use the Grav Package Manager or GPM:

$ bin/gpm index

This will display all the available plugins and then you can install one or more with:

$ bin/gpm install <plugin/theme>

Updating

To update Grav you should use the Grav Package Manager or GPM:

$ bin/gpm selfupgrade

To update plugins and themes:

$ bin/gpm update

Upgrading from older version

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 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

Exploring More

Backers

Support Grav with a monthly donation to help us continue development. [Become a backer]

Sponsors

Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]

License

See LICENSE

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