-
Notifications
You must be signed in to change notification settings - Fork 122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Edit pages via web-interface #3
Comments
It's a great idea in principle, but I'm not really sure how it'd work. Are you thinking it would just allow you to edit the files that are stored on disk? Would it need to talk to a version control system when you save a change? Incorporating VCS support seems a little too complicated to me, and yet without it I can't imagine myself using it. Distributed version control provides a backup for free. Warrants further thought. Perhaps I've not managed to see a great way to do it? Feel free to persuade me... (or contribute a front end - it would make sense for it to be a separate app). |
IMO the web based admin interface defies the whole idea of Nesta. CMS for developers who like to edit their text using their favourite text editor :) |
It does rather. It's not just editing the content, it's the flexibility that Sinatra gives you over design and layout that I'd worry about. You can start flinging your Markdown into a new directory, tweak a bit of the code, and it'll just get served up. You can create sidebars in templates that couldn't be controlled by the UI. Having a UI would make me feel resistant to doing this kind of quick hack; I'd feel as though I'd be giving something up by hacking a Nesta site into something that wouldn't work with a UI. That might be reason enough not to make one. The other side of the coin; it's really easy for me to make a friend a small site with Nesta, and it's much faster to develop a design in TextMate than in a "proper" CMS like Radiant. But when I'm done, they can't edit their content on a Nesta site. A few weeks back I set a site up in Nesta and then spent 45 minutes porting the whole thing to Radiant. The finished site was much better than it would have been had I built it in Radiant from the outset (where layout changes are more painful to test). But then it didn't really take me long to port it. I've got another friend (a designer) who is yet to get his shiny new Nesta site installed on his laptop. He's adamant he's up for learning how to add and push new content; will be interesting to see how he gets on. My current thoughts are that it might be better to spend the effort on knocking out more themes. |
I don't think the two have to be mutually exclusive. Basically we are talking about adding a web-based file manager as an admin interface with file editing capabilities and integration with the git repo. There would be no limit to what you could do with the admin interface beyond the ususal limitations of working via browser vs. a command-line. Then any commits made on the web can easily be gained downstream via a simple I'm thinking the best of both worlds here --not one or the other. I have the same issue gma mentions. I want an elegant file-based CMS that I can give my friends and customers access to reduce my maintenance overhead. |
Okay. I'm envisaging a UI with it's own copy of the content git repo (the repo that you push to when you publish a page needs to be a bare repo, so we can't use that). The UI should therefore know how to commit a local change and then publish that change to the site (this sounds like a good workflow, as well as a requirement due to how git works). It would be well worth teaching the UI (and the user) how to resolve conflicts when It'd be great, and I'd love to see such a thing as an option (I don't think it belongs in the core code base), but it's not at the top of my priority list at the moment. Current todo list goes something like this:
Of course, there's nothing to stop somebody else starting something, and I could chip in later... You're not the only person who's asked about it: |
VCS backed Markdown in a content directory sounds familiar. But I guess Gollum won't spare the metadata when editing. |
Interesting thought, thanks – perhaps we could fork and patch it… |
I needed a very simple web UI for a project, so I started a gem. It's still very, very buggy and primitive. If anyone wants to help out, it'd be much appreciated. https://github.com/elitheeli/nestadmin Eli |
How about Cloud9 integration? Perhaps we could even get content editing working on Heroku that way.. |
Cloud9 is an interesting thought; has anybody tried it? A while ago I was thinking "if I were to do a UI, I'd start with an API and build user interfaces on top of it…". I'd also like a desktop app for it you see, and then I'd have to make an iOS version… But it's nowhere near the top of my todo list at the moment. Where is nestadmin unto @elitheeli? Any thoughts about how to make git commits from the UI? |
This project's still on my todo list, but also somewhat towards the bottom. I can't imagine wanting to merge copy, so I'd have the server just serve up the latest version of each page. Does this make any sense? On Aug 25, 2011, at 5:14 PM, gma wrote:
|
What do you mean by "merge copy"? |
"Copy" (the noun) as in text or content. Sorry, rereading that now it seems ambiguous. On Aug 26, 2011, at 11:04 AM, nathanaeljonesreply@reply.github.com wrote:
|
Well, you wouldn't need to handle merging in the CMS, I'd just run 'pull', 'commit', and 'push' from the Cloud9 side. Although all of this is a moot point until Cloud9 opens up an API. Right now you'd have to run your own copy of Cloud9 on a separate server, which would be pointless. |
On 26 Aug 2011, at 01:56, elitheeli wrote:
It does make sense, especially given that Nesta doesn't actually depend on git at all. If two people edit the same page at the same time, I suppose one would lose their changes, but that's arguably not going to be a significant problem in most of the places that people would use Nesta. |
In my experience, sites that have enough concurrent editors to have issues with file conflicts are using a DB-backed beast of a CMS. Online editing for Nesta would probably never be a primary edit method, but would be extremely useful for fixing broken links or spelling errors when we're away from our development machine. If there was a way to tell GitHub to push changes to a server, it would be easy to do from GitHub. On my non-heroku servers, I'm already using GitHub/Cloud9 to edit content live. I just have a admin page on the web site that runs git pull and restarts the server. |
I'm closing this for the moment; no plans to incorporate it into Nesta itself. |
It would most awesome if there were an online admin interface in which one could edit a sites pages. That's the one feature I've been missing in a file-base CMS.
The text was updated successfully, but these errors were encountered: