I need a CMS static site generator for creating/editing static websites locally on my desktop.

Formal requirements: FLOSS; native installation on GNU/Linux; with GUI; must not require a local server (I don’t want to install a usual server-side CMS on the localhost).

1) Adding a site

The tool should allow to manage several sites.

Ideally, it asks for a local folder (where all files of the site will be saved) and the server login data.

2) Editing the code

I want to write all code (HTML, CSS, JS) myself. No WYSIWYG!

It should support a template engine, which could be really basic. Just let me add placeholders in the HTML template, where each placeholder creates a field in the GUI for adding/editing content. Bonus points for supporting field types (text field, textarea, select list with predefined values, image, etc.).

3) Editing the content

The CMS should show me a list/tree of all added pages (and other created resources, like CSS files, HTML templates, robots.txt, .htaccess, maybe even images like the favicon).

When adding a new page, it would be great if I could choose an HTML template to be used (in case I have created several).

When editing a page, it should only show the fields for the content, not the full HTML of the page.

I don’t want a rich text editor; just let me enter plain text or even HTML or Markdown or something like that.

An internal search function would be great.

4) Uploading the site

I don’t care how exactly the files are uploaded (FTP, SSH/SCP, …), as long as I don’t have to do it manually.

Ideally, it only uploads changed files.

  • I started writing such an application in c# a long time ago and got pretty far with it. Minus the upload and search features this is exactly what I was working on. I'm really surprised something like this just doesn't exist! It would be MUCH easier to write using a language for the web though such as php which could easily run within a VM... I may knock something together – user3791372 Aug 28 '14 at 15:05
  • 1
    Not really matching your various requirements, but probably worth a look: TiddliWiki, a self-contained Wiki/CMS in a single HTML file. – Marcel Jul 3 '15 at 5:10
  • A combination of prose.io, Github, and a Jekyll Now fork should be all you need to multiple sites up and running without hitting the command line. – Steve Moser Jul 26 '15 at 1:27
  • Is this very different from softwarerecs.stackexchange.com/questions/3020/… ? – Nemo Oct 5 '15 at 20:31
  • 1
    @Nemo: Both have several overlapping feature requirements, but here I’m looking for a tool that runs locally on my desktop (so for a single user only), while in the linked question I’m looking for a self-hosted tool (for multiple users), so a possible solution would only apply to one question. – unor Oct 5 '15 at 21:14

Jekyll is a static site generator.

It doesn't have a GUI, but allows you to create templates and content and allows markdown with a whole slew of customisation which a gui would find difficult to work around. You could easily use your favourite generic ide/text-editor for making the texts. Markdown is supported in a lot of editors.

The template language is Liquid (a ruby-based template language)

I just found https://getpublii.com/:

... the app works locally you don't have to worry about security updates or manage databases.

... The goal of Publii is simplicity; no matter your skill level you'll find an intuitive user interface that, unlike static HTML generators, is easy-to-use.

Back in the days, I tried NVU. This is stale now, but it links to Kompozer.

The features seem to be matching your requirements on several points, though maybe not on the content edition (but if you want to restrict the data that can be edited, maybe you would be better off with a CMS where you control who edits the content and who edits the rest of the code).

It is available on Windows and Linux.

You might consider looking into DocPad as a static site generator. It can be used with whatever markup tools you use (HTML, Jade, Haml, CSS, Sass, Less, etc.) and has a highly configurable build system.

As for the GUI you describe, it sounds like you might be looking for an IDE. One option in this department is Eclipse for PHP Developers (even if you won't be using the PHP tooling components). With a library of extensions, it can do all that you're looking for.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.