grav | Modern, Crazy Fast, Ridiculously Easy and Amazingly Powerful Flat-File CMS powered by PHP, Markdown, | Content Management System library

 by   getgrav PHP Version: License: MIT

kandi X-RAY | grav Summary

kandi X-RAY | grav Summary

grav is a PHP library typically used in Telecommunications, Media, Media, Entertainment, Web Site, Content Management System, Bootstrap, Symfony applications. grav has no bugs, it has no vulnerabilities, it has a Permissive License and it has medium support. You can download it from GitHub.

You can download a ready-built package from the Downloads page on

            kandi-support Support

              grav has a medium active ecosystem.
              It has 13826 star(s) with 1381 fork(s). There are 347 watchers for this library.
              It had no major release in the last 12 months.
              There are 378 open issues and 2568 have been closed. On average issues are closed in 45 days. There are 32 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of grav is

            kandi-Quality Quality

              grav has 0 bugs and 0 code smells.

            kandi-Security Security

              grav has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              grav code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              grav is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              grav releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.
              It has 54027 lines of code, 4647 functions and 504 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed grav and discovered the below as its top functions. This is intended to give you an instant insight into grav implemented functionality, and help decide if they suit your requirements.
            • Get a level listing
            • Handles deprecated errors .
            • Initializes the Twig templates .
            • Recurse a directory
            • Set the page header .
            • Convert an url to an url
            • Build a sort array
            • Check file metadata .
            • Determine if a function name is overloaded .
            • Get the dependencies of a package .
            Get all kandi verified functions for this library.

            grav Key Features

            No Key Features are available at this moment for grav.

            grav Examples and Code Snippets

            No Code Snippets are available at this moment for grav.

            Community Discussions


            checboxes doesn't add checked attribute
            Asked 2022-Mar-11 at 19:03

            Having some problems overriding the Grav CMS checboxes. The problem is that checked attribute doesn't appear. For this purpose Grav uses the {% if checked %}checked="checked"{% endif %} in twig template. But it doesn't work. Just nothing is added after a click.

            It doesn't work with my code.

            The overridden themes/child-theme/templates/forms/fields/checkboxes/checkboxes.html.twig



            Answered 2022-Mar-11 at 19:03

            "DOM elements, no checked="checked" after click"

            That's how a checkbox works by design... See MDN docs about the checkbox

            A Boolean attribute indicating whether or not this checkbox is checked by default (when the page loads). It does not indicate whether this checkbox is currently checked: if the checkbox's state is changed, this content attribute does not reflect the change. (Only the HTMLInputElement's checked IDL attribute is updated.)

            Note: "indicating whether or not this checkbox is checked by default"

            Also, try the checkbox sample at the top of the page. There is no change in the DOM when the checkbox is checked or unchecked.



            Grav CMS: Reset data in form after submission
            Asked 2022-Feb-22 at 17:59

            I have a one page website based on Grav CMS with modular pages.

            One of its pages contains a contact form. It works fine, but the problem is that the reset: true option doesn’t work after submit. The sent data is left in the form and it could be sent once more. I’ve tried leaving only minimum code parts with two fields, but this doesn’t make any sense.

            Grav CMS 1.7.30

            Form v5.1.6

            pages\01.home contains with:



            Answered 2022-Feb-22 at 17:59

            If you comment out the line template: form-messages, the form should be correctly emptied/reset after a submit.

            • Using a fresh Grav One-Page Site skeleton site (download, github)
            • I added page /user/pages/01.home/_contact/
            • added your code to the new contact module.
            • only commented out template: form-messages.

            After submit, same page is rendered and shows correctly the "Thank you message" above the form which is emptied/reset.


            1. The name of the module should be not, unless you are creating your own specific form template.
            2. visible and published are true by default and don't need to be set.
            3. cache_enabled should only be set to false if the page should not be cached because of some dynamic data being used.



            Pygame.colliderect() appropriately stopping movement of 2 movable players (independant) upon collision
            Asked 2021-Dec-25 at 21:51

            I'm making a simple arcade game for 2 players to play on 1 keyboard (one with arrows keys, the other with wasd) and have stumbled upon some issues when making appropriate players stop moving when collision between two player-controlable squares is detected. They seem to sort of merge into each other and also when they are moving the opposite directions they always move one way instead of stopping completely. Do you have any ideas on how to fix the issues? (Don't bother about the top collisions, they will be used for something else.)



            Answered 2021-Dec-25 at 21:51

            The movement of the players can be calculated by subtracting the left from the right moment:



            Modify admin configuration values on save
            Asked 2021-Dec-13 at 04:21

            I have created a configuration form in Grav's admin panel, and I want to extend/modify some of it's values on save. More precisely, I have a list form element that looks like this in the blueprint:



            Answered 2021-Dec-13 at 04:21

            I did the following which works fine:

            • In config file /user/themes/quark/blueprints.yaml, I copied your field definition.
            • In Admin I added some topics on the config page of theme Quark.
            • The 'Save' action was captured by the following eventhandler:



            Generating a self-signed cert with dockerfile not actually generating a self-signed cert
            Asked 2021-Nov-06 at 02:52

            First, I'm fairly new to docker. But this seems pretty straight forward.

            I am working off of this dockerfile. I made some very basic modifications like installing openssl and generating some self-signed certs so I can use ssl in apache. Here is a section that I added to the linked dockerfile:



            Answered 2021-Nov-06 at 02:52
            COPY /ssl-certs/ssl.key /etc/apache2/ssl/ssl.key
            COPY /ssl.crt /etc/apache2/ssl/ssl.crt



            Calculating displacement from velocity equation with scipy.integrate.quad in python
            Asked 2021-Aug-07 at 18:36

            I am a total beginner in python and I am really stuck in this piece of code.

            The code is a simulation of a rocket launching What I want to do is calculate and store the displacement done by the rocket with time. To be able to plot displacement vs time.

            The rocket velocity (u_rocket) depends on t and m(t) (m_rocket)

            • u_e and g are a constant
            • m(t) is the current mass of the rocket with equation
            • m(0) is the initial rocket mass (includes the whole fuel)
            • m_b is the rocket mass when there's no more fuel
            • t_b is the time at which fuel is finished

            I've tried defining u_rocket, but when it's integrated I get -ve values.

            How should I define u_rocket so it takes into consideration m_rocket and t? Should I nest m_rocket function inside u_rocket ?



            Answered 2021-Aug-07 at 18:36

            It seems something is wrong with expression for the current mass of the rocket. It should decrease with the time (as rocket consumes fuel), but in your case it increases. I think that's why you get negative values of ve.



            Get descendants of page in Grav admin
            Asked 2021-Jun-15 at 07:54

            In a grav theme plugin, I want to provide a method to fill a select input field in a page blueprint with some other page's routes:



            Answered 2021-Jun-15 at 07:54


            Grav CMS on Windows
            Asked 2021-Mar-12 at 07:09

            I installled grav from composer. copied the select2 doc folder from git repository to users folder on my grav cms installation When I open it on localhost it shows like the attached image. What am I doing wrong



            Answered 2021-Mar-12 at 07:09

            As a security measure, Grav 1.7 has enabled Twig function 'autoescape' by default. That means all output (stylesheets tags, scripts tags, content, etc.) are being escaped to prevent malicious code to run.

            There are a few options to fix or workaround this:

            • If you feel comfortable with code, you can go through all templates provided by the theme used and add filter |raw to output statements of which you are sure the data is safe. Eg. {{ content | raw }}, {{ assets.css() | raw }}, {{ assets.js() | raw }}, etc.
            • Or you can add the following settings to user/config/system.yaml to disable auto-escaping:



            How to maintain distance between bases in pygame
            Asked 2021-Mar-06 at 06:37

            I am facing three problems right now and i want to get there answer seprately, First question had already been asked you can also answer that first....



            Answered 2021-Mar-05 at 08:27

            The error is caused by the fact that you tried to get an element from base instead of bases

            if base.y - base[i+1].y < 20:



            Game Over is not working properly in pygame
            Asked 2021-Mar-05 at 05:31

            I am facing three problems right now and i want to get there answer seprately, plz cooperate....



            Answered 2021-Mar-04 at 11:34

            I think the problem is you're just telling it to draw the game over then continuing with everything else, you're not stopping the rest of the code from running. How about adding another variable, is_game_over then replace your if code with:


            Community Discussions, Code Snippets contain sources that include Stack Exchange Network


            No vulnerabilities reported

            Install grav

            These are the options to get Grav:.
            What is Grav?
            Install Grav in few seconds
            Understand the Configuration
            Take a peek at our available free Skeletons
            If you have questions, jump on our Discord Chat Server!
            Have fun!


            The full documentation can be found from
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
          • HTTPS


          • CLI

            gh repo clone getgrav/grav

          • sshUrl


          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link