I don't get it

I am a web designer/developer. I am fluent in HTML5 and CSS3. Most of the sites I develop are either flat html or custom WordPress/Joomla/Magento sites. I do not understand why GRAV would be a better choice. Please explain why I would want to abandon html and learn markdown.

You’re not abandoning HTML or CSS. You making content easier to create with markdown. The idea behind Grav is to ditch the database and lots of unnecessary code to get a very lean and VERY fast site. You’re able to create your own template files with HTML in a much more flexible way and then add your content quickly with markdown. You’re also ditching clumsy text editor plugins that usually break code and using a much safer markdown language.

Between plain html sites and database-driven CMS, there’s a whole lot of space.

A bit of this space is filled by static site generators.

Some of this space is filled by flat file CMS, including Grav, which is way more flexible and reusable than plain html sites.

And more flexible and powerful than static site generators.

On a functional level, Grav does not yet offer all the gazillions plugins that other open source CMS offer, but on the other hand writing your own plugins is very simple and there are many examples ready to be examined on GitHub.

Advantages over traditional CMS:

  • Simple to deploy
  • You don’t have to mess with databases
  • Merging staging and production sites is easy as you only manage files.
  • It’s just files. Keeping everything under version control is very simple. Including rollbacks.

Why to use grav, the answer is simple, you will build faster and modern websites.

Markdown is really easy, (in fact you are writing MD in this forum) and you can use html if you want. That is all you need to start working with Grav and there are some templates and pre-built websites called skeletons, not many for now, but Rockettheme.com have plans to build professional templates.

Your next step on development with Grav, if you want to modify a template, is to use Twig, is like php but a lot more easy, after that, you will find that you have 100% control of the generated html code.

Wow some great answers… i’ll throw my quick answer on to the pile too:

Basically when your tired of writing inefficient and repetitive static HTML sites you typically look for a CMS to ease the burden of development and also maintenance for you and your clients that will ultimately have to live with the end result.

This typically requires more upfront expense in time and effort to learn said CMS, train your clients, and keep the site up to date with security patches, etc.

Grav is a flat-file CMS that marries many of the benefits of two types of systems:

  1. Static file generator system (like Jekyll) that let’s you build sites from simple plain text content + templates to result in HTML. Static file systems result in pure HTML so you can’t do anything dynamic with them unless you employee liberal doses of client-side javascript, and even then it’s going to be limited.

  2. Database-powered CMS gets you all the power of a database and server-side dynamic capabilities, but at the expense of complexity, security (potentially), and increased development time.

Enter a new breed of CMS, flat-file CMSes!

Grav is a flat-file CMS so you work with it in much the same way as a static file generator. Mainly dealing with simple txt files for content, and templates to help you more easily create the resulting HTML output you desire. This makes it nearly as fast as a static page, without the back-and-forth to a database that other systems require. Like a static generator, you are not limited by what the CMS provides, you have much more freedom so you can build much more custom looking solutions. However, because it’s dynamic and not static, you can still do many of the same things you can do with a database CMS, have forms, searchable content, Ajax for loading more posts, plugins that can do most anything imaginable.

So you get the best of both worlds! Speed, flexibility, ease of use, ease of development, with very few downsides.

The main downside (currently) is that Grav is best suited for smaller sites, and if you have say over 2000 pages, it will start to slow down to the point that a regular CMS might be as fast. Other than that, there’s very little that a flat-file CMS can’t do that a more traditional CMS does :slight_smile: