Blogofile frontend for non-techies

94 views
Skip to first unread message

Ryan McGuire

unread,
Aug 12, 2012, 9:21:42 AM8/12/12
to blogofil...@googlegroups.com
Has anyone out there worked on any sort of frontend that enables non-technical people to post to Blogofile?

I have a need from one of my clients for such a thing and I wanted to see what existing solutions might be out there.

Ideally a Blogofile frontend would have the following features:
* A password protected webapp that allowed multiple users to login.
* A screen that listed all the existing posts and upon clicking them brings them to an editor to change them.
* A 'new post' button that brings up an editor with a blank/default post.
* Another screen that lists all the template, css, misc files and allows to edit existing or create new files.
* A 'Save' button that will save the current file on the screen. 'Cancel' button to discard.
* A 'Test' button that will build the blogofile site to a staging location visible only by people with an account on the frontend (not a publicly visible site.)
* An 'Apply' button that builds the blogofile site again and deploys it to the public site. This will popup a dialog asking for a git commit message first and make a commit for them using their logged in account name.
* A history screen that allows them to view old versions of the site (just showing their commit messages) and an ability to revert the site (or test site) back to a previous git commit.
* Behind the scenes the app would need to do some git and user maintenance. Upon login the git repo would need to be pulled to bring changes made outside of the frontend (presuming the main person working on the site is an emacs command-line loving techie.) What happens if there's still a merge conflict on save?

So I'm thinking probably no one has done all of that, so I'm keen on the idea of writing this myself (and open-sourcing the result). I just wanted to see if anyone has heard of any similar software out there that I could base this on. Really the only blogofile specific bits to this are the actions that the 'Test' and 'Apply' buttons do. So this would really just be a 'git aware online editor.' Someone has to have already done this.

Mozilla's Bespin project was supposed to do this, but I think that project was rather ill-fated.

Ryan



Michael Bayer

unread,
Oct 1, 2012, 4:32:38 PM10/1/12
to blogofile-discuss
I am thinking about this right now, as of two days ago in fact, and
its like a watershed moment as I peeked at Blogofile, was amazed it
was picked up by Doug, and is full steam ahead!

In fact, I found absolutely zero mentions of this notion anywhere,
googling today. Until this, and its from my favorite blog engine, we
think alike.

The front end i have in mind is probably broader in scope than
Blogofile itself. It's basically an end-to-end solution you could
give to like, your dad or your uncle, and they can "build their site"
in a way that wont annoy the crap out of you when they ask you to do
something with it.

thoughts I have in mind for this "static CMS frontend" are:

1. is it a desktop application, or a local server that your browser
hits ? The former would be nicer but way more work - its really more
like, hey let's do a web startup, have a free download with options
for the "deluxe" version, etc. So probably not.

So as you mentioned, a dynamic web application (of course I'd write it
with Pyramid) would be the way to do that - however I'd want this web
app to be equally at home running on your local machine as it would be
on a remote host. I think there is definitely a model for the
"management" software to all run locally, pushing out to repositories
that can be shared (that is, let the security just be standard git +
shared static host security). When all you have to host on the
internet is git + static site, its much easier and more secure rather
than having a custom written dynamic web app with passwords and
security and stuff running on a hackable server.

2. Built in support for versioning. Some modular approach would
link it to mercurial or git. Git would be nicer because, its git and
everyone's apeshit over git, mercurial would be nicer because its
Python and you can Python API right into it, and it has fewer pointy
edges.

3. but this is for your dad, he will never know how git works. So it
would really present a fluffy, puffy facade over the whole thing that
shows you just "your posts" and "versions" and "revert to old
version", etc. The git repo is obviously there for the tinkering,
of course.

4. the git repo can push out to various locations. keep it on your
harddrive, or add a "github provider" so it pushes out there, *or* I
have in mind maybe have it push to S3 too, though this would require
an S3 storage engine. I'm really into S3 for mom-and-pop websites
since its practically free. I don't know that my dad wants a github
account. I'm really impressed by S3 and other similar bucket-based
engines like Google Drive and DreamObjects (all of which Boto can talk
to).

5. publishing of course has lots of options too. Publishing can be
to: 1. a git repo somewhere that does the usual "build hook", 2. an
FTP host if you're on a godaddy type of situation, or 3. an S3 bucket,
which is where I host most static sites now.

6. mobile "post" hooks ? like an app, or an email hook ? fun.

Ryan McGuire

unread,
Oct 1, 2012, 4:45:28 PM10/1/12
to blogofil...@googlegroups.com
I started working on this a bit here: https://github.com/EnigmaCurry/blogofile_frontend

So far it's just a text editor with a file browser on the left, it supports AJAX crud operations.

Like you, I'm thinking of making it blog engine agnostic, heck no reason even to make it blog specific. I want ease of installation (preferably zero installation, just login to a website) and no technical know-how required - just an interface to edit some files, save versions, revert to versions and actions to perform (publish, build, whatever).

I think we could easily make this a standalone app too, especially with S3 publishing. Distribute it as a Jar file containing Jython and the app, it starts a local server, and have it load up in whatever browser the user has installed.

--
You received this message because you are subscribed to the Google Groups "blogofile-discuss" group.
To post to this group, send email to blogofil...@googlegroups.com.
To unsubscribe from this group, send email to blogofile-disc...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/blogofile-discuss?hl=en.


Jeffrey Jenkins

unread,
Nov 26, 2012, 11:14:45 AM11/26/12
to blogofil...@googlegroups.com
Given that it isn't that complicated, an adobe air application might be the easiest thing to make and distribute.  For non-technical people I'm not sure if a static site generator is going to be worth it compared to just getting an account on blogger, wordpress, squarespace, etc.  Especially since they're going to need hosting anyway.

That said, a couple years ago I wrote a hierarchal todo list web app which used git as its datastore, so I can provide some help with integrating git if you wanted to do that.
Reply all
Reply to author
Forward
0 new messages