News for hackers. Stuff that matters.
Re:Why ElementaryOS Left Medium by alanfranz on Tuesday August 20, 2019 @07:32AM (#20745701)
My problem with Jekyll (or other static generators) is that it's not as straightforward as anything with a web gui, like wordpress or ghost (or medium or tumblr or...). You still need to handle things manually (e.g. the yaml front matter), the preview is not "out of the box", different plugins/extensions may add unpredictable behaviour, you need to setup a build/deploy pipeline, etc. - the experience is just not streamlined.

I think that when you want to write, you shouldn't need to mess up with tech details of your system. It's distracting. Of course I'd like a static website for deploying, but I'd love a web gui which acts as a frontend for such generators. I think that Prose was something similar but I found it buggy/not updated, while another saas I tried(Forestry, I think?) was good but you couldn't customize everything.

Ghost is my ultimate choice until an official, core-developers supported web gui is created for jekyll, hugo, or whatever static generator lies out there.

Re:Why ElementaryOS Left Medium by zimbatm on Tuesday August 20, 2019 @08:24AM (#20746093)
The main issue with Jekyll is the blog post system. It requires all the blog posts to live under `_posts/<date>-<slug>.md`. So now the user has to invoke a command-line tool to create the proper slug. Then if the post doesn't get published on the same day or the title changes the user has to rename the filename. Images live in a different folder and get all put together.

A better implementation would be: render all the markdown files in the repository and map README.md to index.html. Now you can create your own file structure, have your images with the article, and optionally add them to the RSS feed by adding a `published_at` in the frontmatter. Or even better use the git history to find out when it was added (and changed) in the repo. You get all the "admin" and rendering for free from GitHub.

I guess my point is that there is a lot of friction inherent to Jekyll's blog post publishing system. Since I adopted that other approach it's much easier for me. I love to only focus on the text and not worry about the rendering. And be able to edit it with my favourite text editor.

Re:Why ElementaryOS Left Medium by softwarelimits on Tuesday August 20, 2019 @07:41AM (#20745756)
As a proud HN commentor you should have built your own static site generator long time ago. Preferably in Assembler or some esoteric unknown language!
Re:Why ElementaryOS Left Medium by DavidDarnes on Tuesday August 20, 2019 @09:48AM (#20746983)
As much as I love Jekyll, I have to agree with your points. Jekyll isn't very accessible with it's specific front matter and file naming convention. However I don't think Jekyll will ever have a proper GUI.

You can have the best of both worlds though. You can use gulp.js to build Jekyll friendly files coming from Ghost using the Ghost Content API: https://david.darn.es/tutorial/2019/08/11/use-ghost-with-jek...

Re:Why ElementaryOS Left Medium by keb_ on Tuesday August 20, 2019 @09:48AM (#20746990)
I used Jekyll for a long time before I got tired of it for the exact reason you mentioned. I used write.as for a while until I found rwtxt (https://github.com/schollz/rwtxt). You could self host if needed.

It's extremely minimal, but I found that it's perfect for my needs. Sample blog: https://rwtxt.com/kevinfiol

Re:Why ElementaryOS Left Medium by zubspace on Tuesday August 20, 2019 @07:50AM (#20745806)
I tried Hugo before but came to the same conclusion. The simplicity draw me into trying it, but in my opinion the solution is not streamlined.

That's why i finally settled for a Flat File CMS [1], in my case Grav [2]. Like with hugo you get total control. And with most of them you get a single web interface to administrate the site, manage extensions and write blog entries. And you still have the possibility to git push everything on the dev server and git pull on prod, without managing a database. It's a dream.

They are not without problems though. You need to host your php site somewhere. Sometimes it's necessary to dive into php to fix some problems and creating something unique still takes some web skills (in contrary to wordpress for example).

[1] https://github.com/ahadb/flat-file-cms

[2] https://getgrav.org/

Re:Why ElementaryOS Left Medium by e_proxus on Tuesday August 20, 2019 @09:02AM (#20746451)
I would love something with a UI like Grav to edit and create my site, but with a static web page export to publish it. I'm fine with running the UI only locally on my computer so even a desktop app would be fine.
Re:Why ElementaryOS Left Medium by zubspace on Tuesday August 20, 2019 @09:35AM (#20746820)
There's a plugin [1] for that, but I haven't used it before. It creates plain old html files.

[1] https://github.com/BarryMode/grav-plugin-blackhole

Re:Why ElementaryOS Left Medium by Tomte on Tuesday August 20, 2019 @07:40AM (#20745749)
> Of course I'd like a static website for deploying, but I'd love a web gui which acts as a frontend for such generators.

We used to have that with MovableType and (less known) Bricolage.

Today there is Lektor (does it support Python 3?) and that's about it.

Re:Why ElementaryOS Left Medium by Sendotsh on Tuesday August 20, 2019 @08:44AM (#20746285)
Yeah my dream blog is basically Ghost that deploys static posts when I hit Publish/Update. I’ve been slowly working on something like that for myself.
Re:Why ElementaryOS Left Medium by lookingsideways on Tuesday August 20, 2019 @08:50AM (#20746333)
Have you looked into doing just that? There are a number of options and more arriving all the time.

https://ghost.org/docs/api/v2/gatsby/

https://ghost.org/docs/api/v2/eleventy/

https://ghost.org/integrations/netlify/

Re:Why ElementaryOS Left Medium by e_proxus on Tuesday August 20, 2019 @09:05AM (#20746493)
It feels a bit overkill to pay $29 per month just for a hosted blog UI. And if you're running Ghost yourself on a server or on your computer, it's not really a static site anymore.
Re:Why ElementaryOS Left Medium by lookingsideways on Tuesday August 20, 2019 @09:38AM (#20746854)
From the OP:

> Of course I'd like a static website for deploying, but I'd love a web gui which acts as a frontend for such generators.

If you want such a gui on your local machine you're not much more than a few commands away

  npm i -g ghost-cli
  ghost install local
Re:Why ElementaryOS Left Medium by alanfranz on Tuesday August 20, 2019 @06:06PM (#20752683)
This looks promising. I'll check it out.
Re:Why ElementaryOS Left Medium by ergl on Tuesday August 20, 2019 @09:14AM (#20746590)
A good compromise is something like Netlify CMS[0], which adds a GUI on top of a static site generator so you can write posts through a web interface. AFAIK it works with a variety of static generators, so you have a few choices. Of course, you're tied to the netlify infrastructure.

[0]: https://www.netlifycms.org

Re:Why ElementaryOS Left Medium by alanfranz on Tuesday August 20, 2019 @06:04PM (#20752663)
I used it. Nice but incomplete, and still needs manual tinkering.
Re:Why ElementaryOS Left Medium by michaelanckaert on Tuesday August 20, 2019 @02:34PM (#20750381)
I'm using Pelican [0] and found it really easy to setup and use.
Re:Why ElementaryOS Left Medium by meerita on Tuesday August 20, 2019 @07:46AM (#20745784)
I use Jekyll + one admin plugin. Work locally, then do jk build and ./deploy.sh and everything goes smoothly. But well, it's not pretty interface to deploy.
Re:Why ElementaryOS Left Medium by tonyedgecombe on Tuesday August 20, 2019 @08:14AM (#20745995)
I always liked Joel Spolsky's CityDesk software. It's way out of date now but the basic principles were good. I'd love to find a modern equivalent.
Re:Why ElementaryOS Left Medium by tasogare on Tuesday August 20, 2019 @08:09AM (#20745955)
What about a local Wordpress instance + a script to scrap content and publish it as a static website? Best of the two worlds without too much fiddling.
Re:Why ElementaryOS Left Medium by alanfranz on Tuesday August 20, 2019 @06:08PM (#20752699)
Are you sure it's easy to 'scrap' ? What if the plugins render something conditionally depending on e.g. the user agent or the current time or other variables? Faking a static website through a mirror doesn't work nicely.