Wednesday, May 04, 2005 - Posts

tilde: XML Websites Without Any Programming

Click here to download a tool I wrote for creating data-driven websites without any programming or databases, from any editor capable of outputting HTML.

I recently finished recreating my website (http://www.servicestuff.com, in about 3 hours) using this tool. I've called the tool "tilde the site builder", it's simple to setup and use, and its purpose is to let you create data-driven websites in your favorite designer (Word, FrontPage, anything that outputs HTML). The data comes from an XML file, and simple commands that can be inserted along with the text of your site let you bind to different parts of the XML file.

eg. When editing the web page, rather than type your company name, put ~/companyInfo/name~ (an xpath) and tilde will automatically pull that path out of the XML file and insert it into the file. It also pulls sequences out of the file (eg. $/companyInfo/employee$) and can put the result into tables with similar syntax. And you don't have to edit any HTML by hand, you just focus on the WYSIWYG aspect of editing the page. And this substitution is all done server side so you don't have to rely on any specific browser.

Tilde is a very cool tool for several reasons:

1. It's really simple.
2. I can use whichever designer/editor I want -- I'm not stuck with Visual Studio. A friend of mine used Excel to generate a data-driven website! Personally I use a combination of FrontPage and Microsoft Publisher.
3. I just need to design a couple of pages and the XML creates the rest of the site.
4. No need for a SQL database and the headache of setting up and maintaining a database, not to mention the price.
5. I can keep a backup and history of my entire site content, by putting the XML file into source control.
6. It uses XPath to address parts of the XML, and XPath is cool.
7. It even supports master pages, so you don't have to copy banners and navigation bars to each page.
8. It comes with a little web server of its own, so you can design your site locally off-line and just upload it when you're done.
9. It works with any ASP.Net enabled site, just by copying files on to the server. You can make the site live in minutes.
10. It's a really simple way to target multiple platforms without having to recreate code or data (WEP, PocketPC etc.)

It's a lot like using XSLT without having to know XSLT. XPath and the tilde commands are really simple to learn compared to having to know all of XSLT, I even provide a quick intro to XPath in my guide to using tilde-SiteBuilder.

Anyway, while I'm testing it you can download it for free, so go ahead and try it out and let me know what you think.

Also, if you're interested in the templates I used on my site, add a comment and I'll mail them to you.