Wow, first of all, this is commendable work. I'm extraordinarily impressed by the commitment to minimize dependencies. Of the four dependencies, only one appears to not be owned by the author, and only one has any additional non-dev dependencies. Barring any other thoughts, that's pretty impressive.
To summarize my reservations, this lacks custom post types, meta fields or modules, and a full deployment story.
Although I can picture it, I think the author would get a lot more traction if they demonstrated how users might serve the generated content. It also feels odd to have to do so manually. Realistically this requires some kind of CI script, or, if attempting to expose to content editors, a dual reverse-proxy configuration.
I'm also not thrilled with the handlebars-esque DSL. Any templating solution without a general programming escape hatch is problematic in my eyes these days.
Users & Developers alike want a content management dashboard that bends to their sense of organization and needs. Many modern websites have more than one menu, for example. Custom post types are necessary for ease of use and quick content discovery. Modules exist to empower editors to insert beautiful, pre-designed content of their own making. Meta fields exist to signal to editors what kind of content is necessary to make a page viable (required fields). These types of features are becoming table stakes for modern content management systems, and they're very difficult to pull off in a meta-programming sense without the dynamism of a database.
All of that being said, I hope the author really does continue working on this. It's really great and exciting work!
> Aether sits in the sweet spot: simple enough for content creators, flexible enough for developers, fast enough for users.
A thing that most other developers miss is that non-technical people, like (and especially) content creators, shy away from a terminal as if it were such a plague.
Some of them don't even have the mind concept of a directory tree, from a root drive to nested ones.
Therefore, if you have to `cd` to a directory and then `npm run build` it, yeah: the CMS is developer-oriented no matter what you claim. Once your Windows customer tries to run that command (assuming they know what `cmd.exe` is) they'll run into `'npm' is not recognized as an internal or external command, operable program or batch file.`. If it's a Linux person, they may find `node` and `npm` installed, but then it's closer to a developer than the pure content creator this is trying to target.
These products seriously need to compete with the 5-minute WordPress installation. I'm no WP fan, I really don't, but I give credit to its low-friction onboarding.
> Aether stores everything as Markdown files with YAML frontmatter.
Yeah, just like GravCMS[0]. Full disclosure: I'm a Grav user.
Except that Grav has a web admin interface: now, that is more approachable to a non-technical content creator than typing commands in a terminal.
I really don't want to make my comment feel like a rant, but it's very hard to ignore that some devs entirely miss the target public they intend to approach.
I made this point 5 years ago: Today's static site generators are simply not fit for mass consumption[…] if you selected a random, college-educated writer, artist, etc. from a crowd, they are simply on average not actually in the audience for Jekyll or any other contemporary static site generator, despite how slick jekyllrb.com might look <https://news.ycombinator.com/item?id=22991033>
(And the dirty secret is that, for a great many npm-based tools at least, nodejs/npm isn't actually required, and programmers could be writing and distributing them as a simple browser-based app.html (or whatever) instead, by targeting standardized, widely supported APIs that have been around since the days of HTML5—instead of The NPM Way of targeting NodeJS's proprietary stuff that changes/breaks all the time—but they choose not to. <https://news.ycombinator.com/item?id=41481714>)
Rings true! I’ve built a desktop app for building static sites to meet users (read „my dad“) where they are. Haven’t really touched it for a few years.
> A thing that most other developers miss is that non-technical people, like (and especially) content creators, shy away from a terminal as if it were such a plague.
> The admin interface feels familiar if you've used any modern CMS, but it's built with one goal: get out of your way. Write in Markdown, see a live preview, hit publish.
The static site is optional, you can send to use the web interface if inclined.
Ah, I was giving deployment a pass since this is self hosted software. WordPress's GUI install only works if the LAMP stack is already setup properly. It's only fair to presuppose Aether has its requirements already in place as well.
This project is marketing itself as a CMS which it is not.
I would even say vanilla Wordpress without plugins isn’t a CMS, even though it does come close. It’s more like a blog management system with some extra bells and whistles.
In which way does a generator manage content? The user manages content on the file system / git. A static site does not manage anything.
Wordpress is really more of a blog management system with page editing features. It doesn’t work well with different types of content, it’s geared for articles and ”pages”. How would you use it to build a site where a lot of content comes from some other background system, say NewsML feeds for example? It is possible, but you can only import the content as posts, and you only have one schema for what a post contains.
Isn't this kinda the idea behind TinaCMS? Using git/files instead of a database? It's been a long time since I've looked.
The "sweet spot" really depends on the use case. If you're wanting to give content control to folks that couldn't write HTML, or to folks that want to quickly update what content flows into pre-built structure, almost any headless CMS will do. In my case, I need a CMS that can do this:
* Schedule content release
* Preview content in the actual pages
* Store drafts
I hate to say it but, Drupal can do all of that. I hate Drupal. I've considered writing my own but got no further than a save/read set of endpoints. (https://github.com/nobleach/cobaltcms) Who has time to write yet another headless CMS??
Initially, I mistook it for just another static site generator similar to Zola. Then, I considered it akin to Wiki.js. What I mean to say is that even after reading half of the article, it wasn't clear to me what it actually is. In my view, its purpose should be evident from the very first sentence.
This seems like it's already trying to solve too many problems at once. A CMS by definition is just an UI layer for inserting data in a DB, respecting the defined schema(s). Anything else would be getting in my way.
Except PhpMyAdmin is not meant for “content editors”. The point here is that a CMS shouldn’t be concerned with things like “themes”. Surely there’s a sweet spot somewhere.
What do you mean? Many CM systems allow things like custom per-article themes (common in news publishing systems) and multi-channel / multi-site publishing.
The author doesn't write "PHP belongs in the past".
PHP is still great and could benefit this CMS, which reminds me a lot of Kirby CMS. Kirby has the same ambition "get our of your way" and everything is static files, no database if you don't want one. Except Kirby has the added benefit of PHP and optional databases, and easier setup for people who aren't fans of the letters "npm".
Wow, first of all, this is commendable work. I'm extraordinarily impressed by the commitment to minimize dependencies. Of the four dependencies, only one appears to not be owned by the author, and only one has any additional non-dev dependencies. Barring any other thoughts, that's pretty impressive.
To summarize my reservations, this lacks custom post types, meta fields or modules, and a full deployment story.
Although I can picture it, I think the author would get a lot more traction if they demonstrated how users might serve the generated content. It also feels odd to have to do so manually. Realistically this requires some kind of CI script, or, if attempting to expose to content editors, a dual reverse-proxy configuration.
I'm also not thrilled with the handlebars-esque DSL. Any templating solution without a general programming escape hatch is problematic in my eyes these days.
Users & Developers alike want a content management dashboard that bends to their sense of organization and needs. Many modern websites have more than one menu, for example. Custom post types are necessary for ease of use and quick content discovery. Modules exist to empower editors to insert beautiful, pre-designed content of their own making. Meta fields exist to signal to editors what kind of content is necessary to make a page viable (required fields). These types of features are becoming table stakes for modern content management systems, and they're very difficult to pull off in a meta-programming sense without the dynamism of a database.
All of that being said, I hope the author really does continue working on this. It's really great and exciting work!
> Aether sits in the sweet spot: simple enough for content creators, flexible enough for developers, fast enough for users.
A thing that most other developers miss is that non-technical people, like (and especially) content creators, shy away from a terminal as if it were such a plague.
Some of them don't even have the mind concept of a directory tree, from a root drive to nested ones.
Therefore, if you have to `cd` to a directory and then `npm run build` it, yeah: the CMS is developer-oriented no matter what you claim. Once your Windows customer tries to run that command (assuming they know what `cmd.exe` is) they'll run into `'npm' is not recognized as an internal or external command, operable program or batch file.`. If it's a Linux person, they may find `node` and `npm` installed, but then it's closer to a developer than the pure content creator this is trying to target.
These products seriously need to compete with the 5-minute WordPress installation. I'm no WP fan, I really don't, but I give credit to its low-friction onboarding.
> Aether stores everything as Markdown files with YAML frontmatter.
Yeah, just like GravCMS[0]. Full disclosure: I'm a Grav user.
Except that Grav has a web admin interface: now, that is more approachable to a non-technical content creator than typing commands in a terminal.
I really don't want to make my comment feel like a rant, but it's very hard to ignore that some devs entirely miss the target public they intend to approach.
--
[0]: https://getgrav.org/
I made this point 5 years ago: Today's static site generators are simply not fit for mass consumption[…] if you selected a random, college-educated writer, artist, etc. from a crowd, they are simply on average not actually in the audience for Jekyll or any other contemporary static site generator, despite how slick jekyllrb.com might look <https://news.ycombinator.com/item?id=22991033>
(And the dirty secret is that, for a great many npm-based tools at least, nodejs/npm isn't actually required, and programmers could be writing and distributing them as a simple browser-based app.html (or whatever) instead, by targeting standardized, widely supported APIs that have been around since the days of HTML5—instead of The NPM Way of targeting NodeJS's proprietary stuff that changes/breaks all the time—but they choose not to. <https://news.ycombinator.com/item?id=41481714>)
Rings true! I’ve built a desktop app for building static sites to meet users (read „my dad“) where they are. Haven’t really touched it for a few years.
[0] https://www.project-daily.com/
Nice a linux distribution would be appreciated. Will try it with wine
Reminds me of Publii. Nice!
> A thing that most other developers miss is that non-technical people, like (and especially) content creators, shy away from a terminal as if it were such a plague.
More super powers for me then!
> The admin interface feels familiar if you've used any modern CMS, but it's built with one goal: get out of your way. Write in Markdown, see a live preview, hit publish.
The static site is optional, you can send to use the web interface if inclined.
Yeah, I missed that, my bad.
But my point still stands, I checked the repo and this is too advanced[0] for anyone not a developer.
--
[0]: https://github.com/LebCit/aether-cms?tab=readme-ov-file#-dep...
Ah, I was giving deployment a pass since this is self hosted software. WordPress's GUI install only works if the LAMP stack is already setup properly. It's only fair to presuppose Aether has its requirements already in place as well.
Grav isn't a static site generator though like this project is, and requires PHP I believe?
This project is marketing itself as a CMS which it is not.
I would even say vanilla Wordpress without plugins isn’t a CMS, even though it does come close. It’s more like a blog management system with some extra bells and whistles.
I'm confused why you wouldn't consider this (or vanilla Wordpress) a CMS? Are not both of these products, um, content management systems?
In which way does a generator manage content? The user manages content on the file system / git. A static site does not manage anything.
Wordpress is really more of a blog management system with page editing features. It doesn’t work well with different types of content, it’s geared for articles and ”pages”. How would you use it to build a site where a lot of content comes from some other background system, say NewsML feeds for example? It is possible, but you can only import the content as posts, and you only have one schema for what a post contains.
I was singling out the idea that a YAML front matter with Markdown is not specially innovative or attractive as a feature.
In fact, YAML is pretty hard to use to be advertised as user-friendly[0] front matter that can be edited by hand.
--
[0]: https://www.redhat.com/en/blog/yaml-tips
> Here's a radical idea: what if your content lived in simple, readable files instead of being locked away in a database
radical 20+ years ago, maybe
Isn't this kinda the idea behind TinaCMS? Using git/files instead of a database? It's been a long time since I've looked.
The "sweet spot" really depends on the use case. If you're wanting to give content control to folks that couldn't write HTML, or to folks that want to quickly update what content flows into pre-built structure, almost any headless CMS will do. In my case, I need a CMS that can do this:
* Schedule content release * Preview content in the actual pages * Store drafts
I hate to say it but, Drupal can do all of that. I hate Drupal. I've considered writing my own but got no further than a save/read set of endpoints. (https://github.com/nobleach/cobaltcms) Who has time to write yet another headless CMS??
Initially, I mistook it for just another static site generator similar to Zola. Then, I considered it akin to Wiki.js. What I mean to say is that even after reading half of the article, it wasn't clear to me what it actually is. In my view, its purpose should be evident from the very first sentence.
This seems like it's already trying to solve too many problems at once. A CMS by definition is just an UI layer for inserting data in a DB, respecting the defined schema(s). Anything else would be getting in my way.
By that definition, PhpMyAdmin is a CMS.
Clearly, a CMS is something more, geared for arbitrary ”content management” instead of being a ”UI for a database” or an ”editor for web pages”.
Except PhpMyAdmin is not meant for “content editors”. The point here is that a CMS shouldn’t be concerned with things like “themes”. Surely there’s a sweet spot somewhere.
What do you mean? Many CM systems allow things like custom per-article themes (common in news publishing systems) and multi-channel / multi-site publishing.
I'd like to see a comparison with Decap
This looks similar to Hugo and Zola. Are there any big differences between these two projects and Aether?
Is there a Web frontend for Hugo that completely hides all the markdown editing, git, etc?
I basically just want a simple Web UI I can give my marketing team to let them create content that will be rendered using the main hugo templates.
I like to read here about self-built projects. And I agree --as the author writes-- that PHP should belong to the past.
But replacing PHP with server-side JS is not the kind of progress that I'm into.
Anyway: congrats on the release!
The author doesn't write "PHP belongs in the past".
PHP is still great and could benefit this CMS, which reminds me a lot of Kirby CMS. Kirby has the same ambition "get our of your way" and everything is static files, no database if you don't want one. Except Kirby has the added benefit of PHP and optional databases, and easier setup for people who aren't fans of the letters "npm".
Interesting sounding project, I agree that there is room for another CMS
But, no demo anywhere?
The website itself is a demo, as it says in the article. Here's the documentation for more details: https://aether-cms.pages.dev/
[dead]
[flagged]