vitamin-d design inc. and MODx

My wife is a interior designer who specializes on corporate interiors. She’s been holding off creating a website believing that a poorly done or incomplete website (i.e: “under construction”) was worse than none at all. She and her partners recently decided rebranded the business and figured that now would be a good time to make that web thing happen.

Given that I am the de facto tech support professional around these parts, and I know a little bit about this thing we call the internets, I was pressed into service making it happen. Align/Codeferous has a CMS built in WebObjects that we use for our larger customers, but it would have been overkill for this project.

I decided to go with an open-source CMS called MODx which I’ve used a couple of times before and have grown to like quite a bit. The really nice thing about MODx is that it is very easy to slice up an existing design and get it deployed quickly. It took me about 4 hours to go from PDF mockups to completed design deployed in the CMS. It took longer to populate and tweak the content, but that’s always the way it goes.

So, here it is, the new name and home of the design firm previously known as Logue & Associates Inc:


Interesting stuff post

A couple of interesting bits and pieces today:

Blueprint is a CSS frameworks for making grid based web page layout much easier. It incorporates a decent reset.css (to clear all of the default rules set by the various browsers giving you a clean slate) then adds a grid.css and typography.css to give you a consistent base to start with.

I’m not much of a designer, and hacking CSS is fun, but only until it stops being fun (if that makes any sense). Anyway, this looks like a very promising start at making the fun bit last longer.

Via the Daring Fireball linked list.

ERAttachment is an addition to Project Wonder that provides a consistent mechanism for handling file attachments to web apps built in WebObjects. From the javadoc:

The framework provide a single unified set of components and models that can allow the storage of attachments on your local filesystem, served through your webserver; on your local filesystem served through a custom request handler; in your database, served through a custom request handler; and on Amazon’s S3 service, served directly from S3.

I’ve had to handle this kind of thing in a number of apps, allowing users to upload files and serve them back again. Very cool to see this make it into Wonder.

Via an email from Mike Schrag to the Wonder-disc email list.

CSSEdit 2.0

macrabbit has released CSSEdit 2.0, a major update to my favorite CSS editor. Among the many new features in this release is a more refined UI for the visual editors and a cool preview function called X-ray.


X-ray allows you to easily see the box model that surrounds any element (padding, margin, etc) by selecting it in the preview window. This is possible to do yourself by adding temporary borders to the element’s style, but this is easier.

I really like the direction macrabbit is going with this, and hopefully they will continue. It’d be nice to see the kind of CSS analysis that Xyle scope provides. Being able to not only see the effects of your CSS rules but also be able to identify the rule hierarchy that applies to a specific element.

Standard no more!

Karl said: You should change your blog search field to use the new <input type=”search” /> attribute in Safari

So I did. If you are using Safari 1.3 or later the search field should look like this:


It will store your 10 most recent searches (accessible by clicking on the little disclosure triangle beside the magnifying glass). Nothing to fear for other browser users though, it’ll degrade nicely to a plain textfield on any browser that doesn’t recognize the type="search" attribute.

Karl also says:

You can add it to a WOTextField in WebObjects too, just add these bindings:

  • autosave = “autosave-name”; // the name under which to save the previous searches in defaults
  • results = 10; // the number of previous searches to save
  • type = “search”; // the input type (required)
  • placeholder = “my placeholder”; // the grey text in the box when it’s empty and doesn’t have focus.