Multilingual support and gitlab/github support: best solution


#1

Hi,

I’m looking for a Static Site Generator with GUI. A sort of static version of Wordpress.

After some searches on the Web, I found many solutions included yours:

  1. Does Grav support multi lingual Web site via plugin or in another simple way?

  2. Does Grav support gitlab or github page and can be easily deployed?

  3. What are the main advantages of Grav over Netlify CMS, Lektor, Publii?

Thank you


#2

Hi @erotavlas, re: question 2 you might be interested in the Git Sync plugin https://github.com/trilbymedia/grav-plugin-git-sync

Using this plugin you can automatically do two sync with a repo holding Grav pages (and other items, such as Themes, etc.) with your Grav site. If you would like to see it in action you could try out one of my Git Sync-powered skeletons:


#3

Hi @paulhibbitts, thank you for your reply.
In the meantime, I found that Grav supports multilingual Web site.
For what I understood by reading the documentation, Grav is closer to Wordpress with respect to the other solutions. It uses PHP instead of modern programming languages (python, javascript) and Apache Web server instead modern solution (node), but it also provided static site generation.
What are the main advantages over the other?
Thank you


#4

Grav is not a static site generator, but a dynamic CMS that shares many of the advantages that static site generators have. For myself, the main advantages of Grav have been a more lightweight solution that is file based and as well a really well thought out architecture. And of course how well it works in partnership with Git🙂


#5

Just another quick and specific response.

Grav is not a static site generator. If you only want that for speed reasons, it’s going to be almost as fast.

On Question 1, yes out of the box, plus there’s a plugin to provide a language menu.


#6

Thank you for your reply.
I would like to create a Web site on my PC as fast as possible (via GUI) and then deploy it on gitlab or github.
After several investigation I think that I will use grav.
I only have last question: what are the main differences over Lektor?
I found that both have multilanguage and gitlab or github support.
Thank you


#7

@erotavlas Out of curiosity, I took a dive into the tools you mentioned: Netlify CMS, Lector and Publii. I must admit that the descriptions of the tools are not as clear to me as I would like to, so I’m open for any correction/additions when I misunderstood the tools and/or concepts.

Based on what I have read and understood, I use the following definitions:

  • A static site is a site that consists only of html, css and javascript files. The html pages are not being generated at run-time at the server (e.g. using PHP), but are generated on forehand and hence are static.

    Contact pages, discussion/comments, etc are therefor an issue for static sites because it lacks a server to process any logic and/or storage. External workarounds are available though.

  • A static site generator is a tool that generates a static site out of content files (e.g. markdown), templates and other definitions stored elsewhere (local machine, GitHub etc). The html, css and javascript files are generated offline and copied/published/deployed to a server like Amazon S3, GitHub Pages, Netlify, or your own VPS.

The tools operating in this field come in flavours making comparison difficult:

  • Pure static site generators like Jekyll consuming external content (importers).
  • Content editors/managers providing content for external generators (Netlify CMS).
  • Hybrids providing (offline/local) content editing and static site generation (Lektor, Publii)

Where does Grav fit in?

  • Concept:
    Grav is not a static site generator. It requires a PHP server that generates HTML pages dynamically each time a user requests a page. HTML output can change based on changing business logic. Because of the PHP engine it can also respond to posts from the client and provide storage. The site is therefor dynamic.

    Conceptually, Grav is more like Wordpress, but build using the latest and greatest architectures/technologies and insights.

  • Performance
    Contrary to Wordpress, Grav is designed with performance and simplicity in mind using modern architectures.

    • It doesn’t use a heavy database to store content and definitions, but instead uses simple fast flat files.
      As a side effect all content and definitions can easily be stored on GitHub and edited by any text editor.
    • Grav does a lot in terms of upfront processing (templates, yaml, markdown, Javascript, CSS) and caching to optimise the creation of html pages, but still generates html pages at run-time.
    • The above makes Grav a good compromise between performance and flexibility/dynamics, by upfront optimisations/caching and run-time dynamics delivered through php.
  • GitHub
    Grav can easily work together with GitHub (since everything is a file) for version control. And websites can download parts of, or entire Grav sites, from GitHub. GitHub is used for version control and (automated/triggered) synchronisation, but not deployment. It still needs its own PHP server.

Besides concepts and performance other factors are important when choosing a system.

  • How viable is a tool? Publii looks nice, but seems to be 5 months young…
  • How big is the community? That tells something about viability and support options.

Hope this helps…

At least it gave me some more insights :slight_smile:


#8

@pamtbaau thank you for your detailed explanation. It is clear that nor Grav neither Wordpress are static site generators while both allow to generate static Web site via plugin.
In particular, this plugin allows to deploy the output of Grav on gitlab or github, as I wrote before.
I’m still investigating Grav over Lektor since Publii does not support multilingual feature.


#9

Hi,
after several trials and testing, my final thoughts are the following:

  1. Grav it is the ideal successor of Wordpress. It is faster and provides multilingual support and a lot of plugin. Unfortunately, the plugin that provides static Web site generation does not work
  2. Lektor it is very simple to use. It provides multilingual support and static Web site generation. However, it is too spartan and in my opinion requires further improvement
  3. Publii it is the most promising (app written in javascript-electron). It works entirely locally, easy to install, easy to use and provides static Web site generation with deploy to gitlab. It lacks of multilingual support (expected next year) and it has few themes.
  4. Netlify it works online directly on gitlab. It supports both hugo and gatsby framework and static Web site generation. I tried a theme for the first that provide multilingual, but it is not very user friendly.
  5. Jekyll Now it is a faster way to use Jekyll as static Web site generation directly into gitlab. Unfortunately, it is not simple to use multilingual support and the “GUI” is not user friendly compared to the others.
    In conclusion, my suggestion is to use Publii a new way to static Web site generation.