gma / nesta

File Based CMS and Static Site Generator
http://nestacms.com
MIT License
903 stars 122 forks source link

Simple admin panel or online markdown editor? #163

Closed chriso0710 closed 1 year ago

chriso0710 commented 9 years ago

Hi there,

As I love Sinatra, I was looking for a simple cms based on ruby/sinatra. I found nesta :-) Before that I did have a longer look into Kirby, a php based flat file CMS, which is very clean and has a nice API (http://getkirby.com).

Kirby has a simple admin panel for uploading files and editing markdown content. This is exactly the feature that my "non technical" clients or content editors would be missing in nesta. Just a simple browser based markdown editor and image uploader. Maybe based on a javascript markdown editor component (lepture/editor, epiceditor, etc.).

Do you have any thoughts on this? Would some kind of minimalistic admin panel be in conflict to nestas concepts? Do you think it's possible to implement such a panel as a nesta plugin?

TIA Chris

gma commented 9 years ago

Hi Chris. Good question.

I agree that being able to edit content without going near Git would be great. I ought to take a look at Kirby's admin panel. The reason that I haven't built one for Nesta probably has more to do with where I traditionally host Nesta sites, rather than whether or not it's a good idea. I use Heroku, and writing content to the filesystem wasn't (initially at least) a good idea. The rules on that may have changed now, but a Git deploy is still the way I deploy new content to my sites. The version control is also nice to have.

With regard to how to implement an admin interface, I'm not sure off the top of my head whether it would be better as a plugin, or as a separate app. I suspect that whichever approach made life easier for the person setting it up would be best, so long as we had enough flexibility.

I'd be tempted to start with a separate app, develop the best solution possible, and then consider whether converting it into a plugin would be beneficial (at which point the best choice would be a lot clearer).

As an alternative to an admin panel, I rather like the idea of making the most of the apps that people already have on their computers. Using Dropbox, an author's local filesystem, and a desktop (or tablet) Markdown editor appeal to me.

@glenngillen has been working on a service that seamlessly integrates Nesta with Dropbox (so that changes can be published when you save a file), and he might have some space in his beta program if you fancy giving it a try.

Cheers. Let me know if you fancy giving it a go…

miphe commented 9 years ago

Hi guys,

I have a couple of non-tech(ish) friends running their sites on Nesta and I think that your idea would be very well received by them, Chris.

I haven't looked at Kirby, but I do agree with the idea of having a simple admin panel as a plugin or so. I (not using Heroku) feel that the "write content > commit > push > ssh > deploy" -flow can sometimes get tedious. If such a project would be initiated, let me know! I'd be happy to join and make it happen.

gma commented 9 years ago

@miphe Interesting – I wish I had more data about how many non-tech people are using Nesta (or would use it if the command line were removed from the equation).

Do either of you have any concerns about how content would get stored or backed up, if you could write text in the browser? Just writing Markdown files to the filesystem would seem like the way forward, but unless you setup some way of backing the content folder up (which non-technical people are less likely to do) you'd be at risk of losing all your content.

This is a nice benefit of using Dropbox (it versions stuff, as well as keeping a copy elsewhere).

But maybe I'm worrying about something that most people wouldn't care about?

miphe commented 9 years ago

It's a good point, absolutely.

Initially I would put the backup of files on the web host (if you lose everything, most web hosts would be able to roll back a day or so), which may not seem fine long term.

Github's way of writing patches through the web interface is pretty sleek as well and we'd still have the git version control. I realize the security of git users, ssh access etc. would be a pretty big project tho.

Drive or Dropbox could also be used as a backup function only, instead of using it as a content management interface.

About non-tech users; the way I lure people into using Nesta is to wave around my Nesta theme and just preach about what a great opportunity it would be for them to learn Git :D I could only speculate about the immense flood of people that would be using Nesta if git / the tech parameter wasn't there.

chriso0710 commented 9 years ago

Guys, thank you for your interesting comments.

This seems to be some kind of philosophical or crossroad question. Is Nesta only for techies or will it open up and change to be used by non-technical/normal users?

Kirby is very successful and well positioned in the php world and has, as I understand, a lot of happy users. One of the reasons is the excellent API and the easy admin panel IMHO.

We have some clients which are moving away from database driven CMS like Wordpress or TYPO3 because of performance, security and complexity reasons.
I like Jekyll and I also understand the approach of using developer and local tools to create/publish your website. I use all this myself. But this way just isn't suitable for the "normal" and non-technical content editor. Those people are not developers, they are not able to use git, they don't even know dropbox and don't need file versioning. @miphe I just can not persuade them to use or learn git :-) They just want to do their editing with minimal knowhow and minmal requirements from all devices. This leaves the browser. I feel that Nesta needs an admin panel built in. BTW: I would like to use Nesta on heroku, but since the heroku filesystem is readonly, I would be willing to make a trade-off and change the hosting environment for Nesta sites which support direct write operations.

For small and medium sized websites I see a gap between static generators and large CMS. This is where Kirby or Nesta come in. I would think that a simple browser based admin panel would appeal to many people who are looking for a flat file CMS based on ruby/sinatra. This could possibly boost Nestas installation numbers.

Chris

gma commented 1 year ago

This was an interesting discussion, but I'm going to close this as I think things have moved on since this discussion.

Supporting headless CMS's like Contentful, Sanity, Storyblok (etc) would seem to be the best approach, were it to be pursued.

But the world has moved on, and I suspect most people will be turning to the large choice of tools in the JavaScript ecosystem these days (e.g. Astro, eleventy, and the plethora of metaframeworks capable of server-side rendering).

gma commented 1 year ago

Checkout Decap CMS (formerly Netlify CMS). It does exactly what we were discussing above, and (with Nesta's YAML frontmatter plugin) looks to me like it would work very well with Nesta.

https://decapcms.org/