ContentMunger
ContentMunger is wiki-style static content authoring with css support and leveragabile content metadata. Use ContentMunger to create a simple website, blog, or create html content to view or send to others.
I Wrote ContentMunger Because I Couldn't Find What I Wanted Elsewhere
Apparently I suffer from not invented here syndrome. Or, I'm just darn picky. I didn't like anyone else's content management system - at least based on the time I allotted for research and experimentation. I'm confident there is a tool or combination of them that do everything I've built here. But I just don't have the time, patience, or wit to find it/them. So, I rolled my own. This is it. This is the new wheel I've invented.
This documentation is not yet finished
And, neither is the application. As time permits I’ll document it and make simple tutorials available. For those that are brave, feel free to download the ruby code and tests for ContentMunger. It’s a bit of a mess right now, so please don’t judge me too harshly. You’re on your own for figuring it out – for now at least.
The unfilled in headings below give you some ideas of what the application does… although I suspect you’ll have to use your imagination.
Using ContentMunger goes a little like this
- Write text files using raw text and textile style markup
- Run ContentMunger telling where your files are and where to place html output
- Read your html output in a browser, and upload it to your website if and when you choose to
Writing a Document
to do
Using Textile Markup to Describe Text Semantically
to do
Document Sections and CSS Styles
to do
Using Macros To Generate or Include Content
to do
Using MetaData In Your Content
to do
Building a Template
to do
Creation an RSS Feed
to do
Product Backlog
- internal document links
- more content meta information: file date, type, inclusions…
- auto-link to wikipedia content
- quicker to create commonly used links to external content - external link table
- blow up better when txt document contains bad information - null publish date creates useless stack
- global concept of “previous” and “next” content to allow easy paging through stuff
- display lists of things sorted ascending, descending, and by various keys including alphabetical and date keys – currently only sorts by date descending are supported
- related content – relate slides to talks, talks to slides, articles or blog entries to other stuff, outside content to other stuff.
- “links in this content” – currently links out catches all the template navigation
- tags: allow any doc to have tags, build tags directory at each level of tree, build index in tags directory containing tag cloud that navigates to tag items
- store state in ruby equivalent to prevayler - only update docs that have changed
- support for partial path in links and field references: bar.doc finds document in tree like: foo/bar/doc.txt, foo.doc finds foo/doc.txt
- support for raw MS word files - translate styles to h1, h2, h3, lists, and divs
- recent changes page?
- most recent blog, article, html document given a particular path
- edit in eclipse - find eclipse spellchecker, grammar checker
- zip or tar contents for upload to site - rake?
- separate content_munger.rb into separate files
- put everything in a sensible namespace so others can better leverage it
- consider how others could leverage it a little at a time - more simply like Redcloth
completed backlog items
- switch on munge to enable/disable content meta information display
- links support #figure as linked text
- links support ?field as linked text

