14

ASK DN — Grav vs. Jekyll vs. Other

3 years ago from , Position @ Company

Just looking for your personal opinion + experience and what you can suggest based on my background + skills. I know there is no real answer to this question

Quick background

  • Designer by trade
  • Very well-versed in HTML, CSS
  • Can hold my own with JS, jQuery
  • Some PHP knowledge from hacking together WP sites
  • Very limited knowledge of command line (was able to get a Jekyll site up with Github pages)

Current workflow

  • Get to polished designs in Sketch
  • Build a static HTML site
  • Oh, you want to change something? I'll have to do that for you

OR

  • If you really needs a CMS, I can use a WP theme or builder

I've been researching this for quite a while now, and have looked (though not extensively) at Craft CMS, Kirby, Jekyll (paired with Forestry), and Grav, among all the others that naturally come up in discussion

Edit: Drastically shortened

39 comments

  • Ronalds Vilcins, 3 years ago

    Kirby CMS! Flexible as hell!

    11 points
  • vadim mikhnovvadim mikhnov, 3 years ago

    GRAV is simply fantastic. It's a more powerful than your usual static-generator (i.e. it has a search as a plugin out of the box), but still the development for it is really simple and enjoyable.

    6 points
  • George Sumpster, 3 years ago (edited 3 years ago )

    Grav is a great CMS, it's super fast, doesn't need a whole ton to get running and while it does have themes and plugins, it feels less like you are developing a plugin or a theme and much more like you are developing a real site, you have really low-level access to everything which makes it awesome to develop for.

    It uses markdown for its editor at the moment, but soon, the Grav team is developing their Admin Pro plugin, which will allow your clients to edit their content with a WYSIWYG editor easily.

    5 points
  • Thompson GeorgeThompson George, 3 years ago (edited 3 years ago )

    I would suggest not using the word "hack", as you're not hacking anything.

    3 points
    • Pierre de MillyPierre de Milly, 3 years ago

      "hack: verb - cut with rough or heavy blows."

      It seems to me that going into the php files of a wordpress theme and roughly copy/pasting some stuff around while removing huge chunks that you don't need can be metaphorically described as "hacking". I quite like the metaphor in fact.

      7 points
      • Thompson GeorgeThompson George, 3 years ago

        And the second definition from the same source : "Use a computer to gain unauthorized access to data in a system."

        You sound unseasoned when you say you're hacking, when you're not really hacking. Although the second definition works in theory, you still sound like you don't really know what's going on.

        2 points
        • Dan CoatesDan Coates, 3 years ago

          While 'hacking' does have negative connotations these days, a better definition for a 'hacker' is:

          “A person who enjoys exploring the details of programmable systems and how to stretch their capabilities, as opposed to most users, who prefer to learn only the minimum necessary.”

          The Use a computer to gain unauthorized access to data in a system. definition refers more to black hat hacking.

          It is a pity that many people think only of the negative meaning of hacking as having the attributes of a hacker in the proper sense of the word is quite admirable.

          This is a good article on the history of the term: http://www.newyorker.com/tech/elements/a-short-history-of-hack

          Anyway, my actual point is that the OP is correctly using the term hacking and by discouraging its use in that context you are actually pushing the term further from its original meaning and making yourself sound "unseasoned".

          2 points
  • Andy MillerAndy Miller, 3 years ago

    I don't think you'll find a more flexible and extensible system than Grav CMS. It was built from the ground up to allow you to build pretty much anything you can think of. From simple one-page websites, to blogs, to documentation sites. You are in no way forced to compromise your design or layout.

    Being flat-file based means it's crazy fast, very portable, easily deployed, and simple to manage. It's open source, the community is very friendly and active. Give it a try if you haven't already!

    https://getgrav.org

    3 points
  • Dimitri Longo, 3 years ago

    you should really try Grav CMS, you don't need much PHP knowledge, It's really fast because of cache system built-in. The community is very active, you will find many themes and plugins in the directory

    2 points
  • Flavio Copes, 3 years ago

    For designers, Grav gives a head start with 35 officially available pre-made sites, called skeletons, which are essentially a collection of theme+content+plugins.

    So you can pick and dissect those 35 sites locally, and see how themes are integrated in the Grav workflow.

    You don't need to know PHP, as you can work more easily with the Twig standard templating language.

    It's not static, that means you'll have the option to add forms, ecommerce, whatever to your site, without having to use 3rd part solutions. Still with static-like performance, as site speed is a key value proposition of Grav.

    If you need custom functionality, building your own plugins is easy and you already have ~120 officially released to choose from or to use as example.

    Also, moving sites around is as simple as moving the user/ subfolder to another site, no database to mess with.

    This makes simple, Git-based deployments a breeze.

    2 points
  • Scott Gallant, 3 years ago

    Hey, I'm the co-creator of Forestry.io. Jekyll makes A LOT of sense. It has a huge community behind it, development is super efficient and liquid is a great templating language.

    (Shameless plug) We're working like dogs to make the best CMS for these sites and we have some super cool things coming out later this month. Here are some current highlights of using Forestry:

    • Supports all Jekyll plugins
    • Integrates with GitHub & Bitbucket (commits back to your repo, and watches your repo for changes)
    • Zero configuration for you project
    • We don't host (set up deployment to S3, Github Pages, FTP)
    • Use Markdown or WYSIWYG
    2 points
  • Marc EdwardsMarc Edwards, 3 years ago

    After a lot of research, I settled on Hugo. Hugo is amazing, flexible and fast.

    http://gohugo.io

    Just mentioning it so you include it in the short list.

    1 point
  • Jared White, 3 years ago (edited 3 years ago )

    I think there needs to be some clarification here on the difference between a flat-file-based CMS like Kirby or Grav, and an actual static site generator like Jekyll, Middleman, Hugo, Hexo, etc. Craft CMS uses a database and so that's way-ay-ay different.

    At this point, I only choose to use a static site generator (in my case, Jekyll) for building sites. I am convinced of the merits of a workflow where your source files are in a Git repo, you can kick-off a simple build phase, and the result is a set of output files (HTML, CSS, JS, images, etc.) that can be served directly by a CDN.

    Not only do you have very little cost involved, but you also have maximum flexibility in terms of backup and content longevity. Your source files will last for decades, and your output files will work anywhere in any browser long into the future (just like you can today open an HTML file made in the early 90's and it'll still load just fine).

    You don't need to set up a database anywhere, you don't need to manage a complex development environment (in the case of local Jekyll development, installing Ruby + Jekyll is pretty darn simple).

    I use Netlify for my site hosting, so it takes care of the Jekyll build "in the cloud" and works with any sort of custom plugin or gem (Ruby package) I might want, and deploys to a CDN in seconds. I just make a change to a text file in my Git repo, commit and push, and only a minute or so later, my site is built and updated world-wide. I can even use Git2Go on my iPad or iPhone along with a text editor like Ulysses or Textastic -- don't need a full-blown Mac or PC to edit my site! I love it.

    1 point
  • Adrian Eskew, 3 years ago

    I'll vote for Grav.

    It is incredibly flexible and approachable. You will fall in love with the power of Twig and how much functionality it can give you in place of standard PHP! When you need a CMS, the Admin panel is beautifully designed and functional. The plugins are small and work without much fuss. I have built one page sites, full on blogs and am working on a SAAS app, all on Grav.

    Hands down the best part of Grav is the community. Whether in the middle of the night or on a weekend, the developers and other users are ALWAYS there to answer anything from simple to incredibly complex questions. They'll even take a zip of your file and audit it for improvements/bugs/functionality. I came from WP, to Jekyll, tried Kirby and have absolutely fallen in love with Grav!

    1 point
  • Adam T.Adam T., 3 years ago

    Not sure what your actual question is, but I've found that Middleman is THE best way to construct static sites, and along the way you'll be creating replicable and understandable partials, layouts, scss structure, etc., Surprised it hasn't been mentioned yet, although there isn't a CMS component it does auto-generate content pages from a single JSON file ;)

    middlemanapp.com

    1 point
  • Ruchi Goel, 3 years ago

    I have put my findings here http://goo.gl/4EMb07; maybe it will help...

    1 point
  • Mathieu CMathieu C, 3 years ago

    I'm a Webdesigner, and I learnt to use Jekyll for my own website. I use Git at work all day (and also for my personnal work), including basic terminal command line. I deploy to my domain via a simple rsync command. Really simple if you have time to dig in :)

    1 point
  • Tobin HarrisTobin Harris, 3 years ago

    So you know Jekyll a bit now? What about linking your Github pages Jekyll site to SiteLeaf or CloudCannon? Then clients can edit content to their hearts content.

    1 point
  • Jason EtcovitchJason Etcovitch, 3 years ago

    Craft is really excellent as a sort of standard CMS; you'll find that your knowledge of HTML and CSS will really get you far.

    In terms of a static site generator, I've only used Jekyll (and not paired with Forestry) and I have to say I love it to bits; if I could build every site with Jekyll I would. It's super easy to learn and is a great introduction to some standard templating concepts. However, it certainly has its limitations, and that's where Craft would work for me. I can go more in-depth on the limitations if you want, I just don't want to write one huge comment :P

    0 points
    • Scott Gallant, 3 years ago

      Jason, if you get around to it, I'd love to hear what you think about Forestry.io. Cheers!

      0 points
      • Jason EtcovitchJason Etcovitch, 3 years ago

        Hey Scott! I've almost started using Forestry like 15 times by now; it seems great, but with any thing-built-on-a-thing, I worry about features and ease-of-use getting lost. Not to say that Forestry is like that, I just haven't gotten around to trying it.

        The other thing is, I just really like writing in code. I have a lot of custom code for each post, so I don't really need it for my particular setup.

        0 points
      • Jason EtcovitchJason Etcovitch, 3 years ago

        I've actually remembered why I didn't pick it up; the preview was sending me an error with my Javascript file. I had emailed you personally about it but I just checked it and it's still occurring.

        0 points
  • Thompson GeorgeThompson George, 3 years ago

    The easiest route isn't always the best. When I pick my tech stacks I look at three things:

    • How much can I learn? • How long will it take? • Will what I am learning be useful later?

    0 points
  • Jack BachJack Bach, 3 years ago

    I have been using Jekyll during the last months. I like simple software, so I'm really happy with it. Collections, configuration, architecture and sass integration are well done.

    That said, it does not support haml, slim or pug (jade), and the plugins I've found for that don't really work. imo writing html is slow and error prone, so I want to avoid it. I don't think I'll use Jekyll again if I find a similar alternative that supports an html preprocessor.

    Also, sometimes compilation takes up to 60s, but usually is pretty fast (below 3s).

    Keep us updated avout your findings!

    0 points
  • Alec LomasAlec Lomas, 3 years ago

    Personally (designer + frontend dev), I use Metalsmith for my HTML build, and write my JS/CSS build using Node APIs or Gulp separately. The whole build process is run with a simple npm run build. I've run this setup on a few sites, and have yet to run into an issue where I couldn't find a solution. This requires some JS knowledge of course, but it's insanely flexible -- I'd liken it more to a static site framework vs a static site generator. Netlify takes care of all my hosting/CD needs and I usually set up a Prose config file for easy editing.

    I've used both Kirby (excellent, but the PHP API is a little verbose) and Grav (a while ago, documentation was lacking at the time). Neither was as easy for me to get going as a Static Site, and was more expensive to host (you can host a static site for free v v easily). If I'm setting up a site for a not-tech-savvy client, I'd probably use Kirby (it's cheap enough and the admin UI is much more straightforward than Grav to me), or figure out Craft. The new Siteleaf also looks very promising.

    0 points
  • Taurean BryantTaurean Bryant, 3 years ago

    Throwing Metalsmith and Blot into the mix.

    0 points
  • Chip Dong Lim, 3 years ago

    Hi Adam, I come from a similar background to you. Have you tried Simpla? I came across this framework about two weeks ago and it's really impressive - you can still do static HTML which has fast loading speed, with CMS on the go!

    I'm planning to write a simple tutorial if anyone finds it helpful.

    https://www.simpla.io

    0 points
  • Kamil KhadeyevKamil Khadeyev, 3 years ago

    I use Hexo for my blog, mostly because it is built on Node.js and I can write what I need in plain JS.

    0 points