These are the sources of an instance of Grav tailored for the courses of M3P2.
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 plugins and themes are included.
Only the php vendors are not included.
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:
composer install
*[Twig Templating](https://twig.sensiolabs.org/): for powerful control of the user interface
http://getcomposer.org/
*[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://pimple.sensiolabs.org/): 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
Then try out
- PHP 5.6.4 or higher. Check the [required modules list](https://learn.getgrav.org/basics/requirements#php-requirements)
bin/grav
- Check the [Apache](https://learn.getgrav.org/basics/requirements#apache-requirements) or [IIS](https://learn.getgrav.org/basics/requirements#iis-requirements) requirements
# QuickStart
to troubleshoot.
These are the options to get Grav:
Perhaps
### Downloading a Grav Package
bin/grav install
You can download a **ready-built** package from the [Downloads page on https://getgrav.org](https://getgrav.org/downloads)
### With Composer
Add the courses from the other repository
You can create a new project with the latest **stable** Grav release with the following command:
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:
php -S localhost:8000 system/router.php
```
$ 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.
## Upgrading vendors
# Adding Functionality
Since our plugins and themes are in this repository, they are frozen.
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`:
So far, Grav itself is safe to update, as well as all plugins **but mathjax** (until they merge our MR).
```
Todo: look up .dependencies and perhaps we'll remove the plugins dir altogether from this repository.
$ bin/gpm index
```
This will display all the available plugins and then you can install one or more with:
The theme `textbook` is tailored for M3P2 courses.
The plugin `gitlab-markdown-adapter` was expressly made for this Grav instance.
```
$ bin/gpm install <plugin/theme>
```
# Updating
To update Grav you should use the [Grav Package Manager](https://learn.getgrav.org/advanced/grav-gpm) or `GPM`:
To update Grav you should use the [Grav Package Manager](https://learn.getgrav.org/advanced/grav-gpm) or `GPM`:
...
@@ -81,50 +53,40 @@ To update plugins and themes:
...
@@ -81,50 +53,40 @@ To update plugins and themes:
$ bin/gpm update
$ bin/gpm update
```
```
---
# 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
Grav is a **Fast**, **Simple**, and **Flexible**, file-based Web-platform.
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.
* Have a look at our [Basic Tutorial](https://learn.getgrav.org/basics/basic-tutorial)
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:
* 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)
# Backers
*[Twig Templating](https://twig.sensiolabs.org/): for powerful control of the user interface
Support Grav with a monthly donation to help us continue development. [[Become a backer](https://opencollective.com/grav#backer)]
*[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://pimple.sensiolabs.org/): 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
- PHP 5.6.4 or higher. Check the [required modules list](https://learn.getgrav.org/basics/requirements#php-requirements)
Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/grav#sponsor)]
- Check the [Apache](https://learn.getgrav.org/basics/requirements#apache-requirements) or [IIS](https://learn.getgrav.org/basics/requirements#iis-requirements) requirements