I need a simple CMS for managing flat xml files
August 4, 2009 9:15 AM   Subscribe

I build Flash applications for a living. I generally make them configurable via an xml file. I'm looking for a quick and easy solution that would allow me to set up a form that clients could fill out when they want to update the xml. NOTE: everything needs to be hosted on the client's site, to which I often have limited access. So I don't want a solution that involves complex DB management.

Say I've created a Flash app, and the client can skin it by entering color values in an XML file. Non-tech-savvy clients often get frightened by raw XML, so I'd like to start offering them simple CMSes that are customized to their particular config files. Some config files are super-simple, allowing my client so, say, just pick a background color and a video to play. Others are much more complex.

WHAT I DON'T WANT is anything that involves managing or setting up a database. My clients might not have access to one; the might not know how to manage one; they might not be able to give me access to me. So this all has to be based around flat files.

I also don't want an desktop app. I want something browser-based, so my clients can update the Flash app from anywhere.

Finally, I don't want anything that I have to host. This should be a solution that I can upload the to client's site and that they can manage from themselves. It should be password-protected so that other people can't much around with the Flash app's settings.

Ideally, what I'd like is something that can take my xml file (or a schema) and auto-generate an HTML-form based on it. And a simple PHP, Python or whatever script that can take the info they enter into the form and update the xml file.
posted by grumblebee to Computers & Internet (8 answers total) 3 users marked this as a favorite
 
Response by poster: Yes, I know some PHP. It just seems as if somebody should have automated this by now. I realize that XML schemas can get wildly complex, but isn't there an easy solution for simple schemas -- e.g. just name/value pairs.

I've almost decided to dust off my rusty PHP skills and write this myself, but I didn't want to reinvent the wheel.
posted by grumblebee at 9:33 AM on August 4, 2009


As someone who's done lots and lots of this, I can tell you that not having a database will bite you in the butt at some point in the future.
posted by lumpenprole at 12:30 PM on August 4, 2009


Response by poster: lumpenprole, I know that, and I would never do without a db for my person stuff, but I don't always have the option to use one for a client.

Many clients feel (wrongly, I think) that it's overkill. They want a Flash video player that plays a playlist. They want to be able to update the playlist themselves. If I tell them they need a db, or that I'll set one up for them, they won't accept that. They may not even be allowed to set one up (e.g. their IT department might forbid it). They want something quick and simple, a Flash file, an html page, and a config file. But they don't want to edit the config file by hand, because they're afraid of code.
posted by grumblebee at 12:40 PM on August 4, 2009


I'm with your clients: Reading/writing a few name/value parameters to a config file and spitting out an XML file does seem overkill for a database. However, if your data needs become more complex, an ultra-simple database is SQLite which doesn't require a separate server, and the database is just a single file. (Although, the client library is not built into most PHP installs, so, it more something to keep in mind rather than a solution to your current problem.)

For your current task, I would just write a simple admin tool using a lightweight php framework.
posted by kamelhoecker at 1:59 PM on August 4, 2009


(I am not a Flash guy, so apologies of there are assumptions implicit in your question that I am ignorant of)

Do you have to store the information via XML? What about something like YAML? Lightweight, human-readable and -editable, and there are a libraries for a bunch of languages to make it easy to read/write data to/from.
posted by misterbrandt at 2:36 PM on August 6, 2009


*if
posted by misterbrandt at 2:39 PM on August 6, 2009


This is exactly what Rainbow Live is for: http://www.codeandvisual.com/rainbow
It provides the key things you require; it's a Flash CMS, doesn't require a DB, spits out XML in a format you choose, has an admin and a user log in, and doesn't require any server scripts to be placed on your domain.
posted by jamesmcness at 2:31 PM on April 28, 2010


Response by poster: Do you have to store the information via XML?

jamesmcness just posted here, and that made me aware of your question from nine months ago, misterbradt.

Flash can read in any text format (and binary format), but it has a built-in parser for XML. If you want to use YAML or JSON, that's no problem, but you will have to either write your own parser or find one that someone else has written. I know there are a bunch of JSON parsers people have written for Flash. I don't know about YAML, but I would be surprised if one didn't already exist.
posted by grumblebee at 2:48 PM on April 28, 2010


« Older RIM + Jobs   |   You belong, you belong, you belong to the Merry... Newer »
This thread is closed to new comments.