Project Antville
Sunday, 18. January 2004
What are Antville layouts?
Antville Layouts are a new way to structure and organize the elements that make up the design of a single site or a whole Antville installation.

The old way

Changing the design of an Antville site has been quite a dangerous thing: there was only one set of skins, color and font definitions per site, and the images used in skins were mixed up with those used in stories. So you could only change the currently active layout, which meant that any bugs introduced were immediately visible for everybody. A lot of users started to work on a new site design in their own Antclick installation, and finally copied it to their public site. Not an ideal solution.

And here comes the "layout"

First, a "layout" contains everything needed: it has it's own color and font definitions plus its own set of skins and images (yes, with this layout- and site images are no longer mixed up). So far so good, but the big improvement is that any Antville site can contain any number of layouts.

Imagine you have a public site running and you want to completely change its design. What you have to do is to simply create a new layout and start to modify it to your own needs. While doing so you can safely test it, meaning that all changes are visible - but just for you, not for everybody else. So modify skins (you can even add custom skins now), upload images, define the layout preferences ... whatever. If something wrong it won't have any effect on your public site.

At the point when your're finished you can simply "activate" your new layout, and with one single click the whole design of your site is switched to your new version (of course you can revert back to your old design whenever you want or have to).

Export/Import of layouts

You can also export layouts and import them again. With this it's just a matter of a few clicks to transport a new site design from your private Antclick installation at home to your public Antville site. You can also use this to backup your layouts (just to be sure), or simply offer your own layouts for downloading. The export file (.zip) of a layout will either contain all images, skins and the preferences or just the changes you applied if your layout is based on a different one (see below).

Layout chains

The use of layouts is not limited to sites only, also Antville installations themselves can have any number of them. To avoid confusion let's call them "system layouts" and "site layouts":

System layouts can only be managed by system administrators, and there are some slight differences between them and site layouts:
first, they can be "shared", meaning that site admins can choose one of them as a basis for a new layout of their own.
second, the skinmanager of system layouts contains all skins available (the one of site layouts contains only those that are to be modified by site administrators).
third, system layouts can be "chained". Imagine you have a system layout called "Winter". Now as time goes by, you want to create a new one called "Spring" which should only differ in a few skins and have different color preferences. So you create your new layout and choose "Winter" as the basis layout. Then you do your modifications, and at the end you define "Spring" as shareable so that any site admin can share this layout. And then, a few months later, you create "Summer" (based on "Spring") and "Autumn" based on "Summer". So you end up with a layout chain

"Autumn" is based on
"Summer" which is based on
"Spring" which itself is based on
"Winter" (the beginning of the chain).

What for? Layouts that are based on other layouts inherit everything from their parent. So basically "Spring" will look like "Winter". Now imagine you uploaded a different header image to "Spring", but didn't change any skins. What happens is that Antville will use the header image of "Spring", but the main page skin of "Winter" to render the frontpage. Same with skins: if you change a skin in "Spring", it will be used, otherwise Antville will take the "Winter" version of it.

Enough of stupid examples, think of a real world situation: you want to test some small layout changes, so simply create a new layout based on the one you want to modify, and then apply your changes to it. Everything else will be used from the original layout.

Note that currently site admins can only choose a system layout as a basis, not one they've created on their own (nevertheless this is subject to change in a future version of Antville).

Online for 2819 days
Last update: 2007-09-25 11:46
recent updates
Release Plan
The roadmap below is obsolete. A newly compiled roadmap...
by robert (2007-09-25 11:46)
The Apache License, Version...
Copyright 2001-2007 by The Antville People Licensed...
by robert (2007-09-25 11:43)
New development site
I am currently in the process of moving all source...
by tobi (2007-09-25 11:27)
Features of Antville
The list below is obsolete. A newly compiled list...
by robert (2007-06-10 15:32)
Project Members
The list below is obsolete. A newly compiled list...
by robert (2007-06-10 15:31)

xml version of this page

made with antville