Discover the project

First visit? Then take a tour of SimpleSite, Mistralys' website building framework with CMS-like capabilities, find out why it is different and what it could do for you. Otherwise, you may want to have a look at the online documentation where you can find all available info for end-users and developers, and find out how to download & install it. If you want to see SimpleSite in action, you can have a look at our who's using? page. Feel free to ask any questions you may have by contacting us via our company website at www.mistralys.com.

Ohloh Metrics

News

Mordziol Yachtservice relaunch

Tuesday, 24th October 2006, by Sebastian Mordziol

The codebase of this website dated back to 1999, and even though it was already entirely dynamic at the time with the help of PHP3, it did not offer any administration interface nor content editing capabilities. To upgrade this old PHP3 codebase to a newer, updated structure we opted for an intermediate solution. Redoing everything is not always the best solution, so we used SimpleSite in "application" mode (no need for a skins folder nor sitemap) to be able to use its featureset without building a full-fledged SimpleSite site. The layout has been updated, the HTML sanitized and wih the help of SimpleSite's administration framework, a CMS system was integrated that allows editing all contents of the website in three languages.

All this was done in a record time of four days including the updated photo galleries and new pages. We are quite happy with the results, and with the integration of SimpleSite which was really a big asset in this project.

You can visit the site under www.mordziol.com, or view detailed project information on the who's using? page.


Sitemap conditions revisited

Wednesday, 11th October 2006, by Sebastian Mordziol

A while back we introduced sitemap condition blocks that allow defining sets of conditions in the <conditions> sitemap root element, allowing changes to be made to the sitemap structure depending on the values of sitemap variables. Amongst other thigns, this makes it possible to hide/display parts depending on the current language for example. A simple switch/case condition looks like this:

<conditions>
    <condition variable="language" type="switch">
        <cases>
            <case value="de">
                <targets>
                    <target>
                        <type>part</type>
                        <action>remove</action>
                        <params>
                            <param name="partID">home:content.intro</param>
                        </params>
                    </target>
                </targets>
            </case>
        </cases>
    </condition>
</conditions>

This example would remove the part "intro" from the area "content" in the sitemap item "home" when the language of the site is "de". While this way of defining the conditions has the advantages of being flexible and regrouping all actions into one block, it is not really simple to use. That is why we introduced the first of a series of attributes for sitemap items, areas and parts that act as shortcuts for the above syntax in a more natural way by using expressions.

The same example as above now looks like this, directly in place at the target sitemap part:

<part id="intro" if="$projectID!=8">
    <type>module</type>
    <module>Template_patTemplate</module>
    <params>
        <param name="input">static/Intro.tmpl</param>
    </params>
</part>

The if attribute defines the expression that has to evaluate to true for the part to be displayed. Any variable that has been defined in the sitemap can be used in the expression, as well as any number or string that do not contain any special characters. The syntax for these expressions is quite simple, here a few examples:

  • $projectID=8 (Variable projectID equals 8)
  • $language!=fr && $projectID=1 (Language is not "fr" and the projectID variable equals 1)
  • $language=fr || language=de (Language is "fr" or "de")
  • $amount < 10 (The variable amount is smaller than 10)

There are still issues with string values, these are currently not recognized. We are working on a better version of the expressions parser to make it more flexible. We want to use a syntax that is easy to remember, and still usable in the sitemap's XML context. We shall post again on this subject, and welcome any constructive input!


FGC Terrassements online with SimpleSite

Wednesday, 30th August 2006, by Sebastian Mordziol

The french terrassing and public works company FGC Terrassements now has its new website online, powered by SimpleSite and conceived and built by Mistralys. For the "Did you know?" box present in the site, Mistralys developed the DidYouKnow? module that was contributed to the list of bundled SimpleSite modules. It includes an administration interface that allows adding and editing of statements to display.

You can visit the site under www.fgc-terrassements.fr, or view detailed project information on the who's using? page.


New websites powered by SimpleSite

Wednesday, 9th August 2006, by Sebastian Mordziol

The french nautic services company GD Marine has chosen to use SimpleSite for their website. Powered by the Myrddin codebase, the site also integrates the administration interface to author the references section as well as additional miscellaneous content. You can visit the site under www.gd-marine.fr.

The german sliding window systems manufacturer Zenker also uses SimpleSite for their website. Using the Myrddin codebase too, it uses the News module but is otherwise static to allow their HTML editors to edit the pages directly via FTP. See it online under www.zenker-dachschiebefenster.de

You can view detailed information about these sites on the who's using? page.


First end-user references online

Saturday, 5th August 2006, by Sebastian Mordziol

The content filters in SimpleSite allow for multiple markups to be applied to contents - currently BBCode, Wiki and Markdown. We have added a syntax summary for each in the end-user documentation section. They are currently only available in french, as our customers are primarily french but I will add the english ones soon.


First release

Thursday, 3rd August 2006, by Sebastian Mordziol

The first release of the SimpleSite codebase is now available! get it here. It has still development status, but is already used in a total of 8 websites so far, the biggest sporting about 250 pages. It is a good starting point to discover SimpleSite, and we apreaciate any kind of feedback you can give on it. The ticket system is currently not public du to massive spam attacks, but you can send any feedback you like at info[nospam]@mistralys.com


New server

Wednesday, 12th July 2006, by Sebastian Mordziol

All our domains have moved to a new server. As you can probably see, we also upgraded the Trac installation which accounts for the rather 'strange' layout. We will correct these things as we go along with the migration of all projects.


Websites online

Monday, 4th April 2006, by Sebastian Mordziol

The SimpleSite codebase is quite solid now, and we are proud to announce that the following websites are online and running with the current SVN version:

As soon as we are done with the relaunch of our company homepage, we will put up some more detailed information on each project.


Sitemap caching benchmarks

Friday, 3rd February 2006, by Sebastian Mordziol

In the current project I am doing with SimpleSite, I currently have about 60 pages and while the frontend works like a charm, the dynamic sitemap generation in the administration was starting to generate quite some unnecessary overhead. With a tree of about 70 dynamically generated pages in the administation, it was time to think about caching. The solution I have implemented is really simple, as it makes use of the sitemap's toXML method which allows to save the current state of the sitemap: I simply save a single sitemap XML file as cache (before any conditions are applied to ensure structure integrity).

While this way of caching is not yet the optimal solution as opposed to serializing the objects to avoid parsing the XML structure, it already eliminates overhead in the administration. I ran some benchmarks, and on my development box it brought a performance gain of 84% in the administration, and 12% in the frontend (average on 30 page loads).

To use the sitemap caching functionality, you have to make sure you have the sitemapEnableCaching root configuration directive set to true, and set the lifetime of the cache file (in seconds) via the sitemapCacheLifetime root configuration directive. You can see how this works in the example site available in the SimpleSite package (get it via SVN).


1000th commit in the SimpleSite repository

Saturday, 17th December 2005, by Sebastian Mordziol

The project has matured a lot in the last few months, and yesterday I have made the 1000th commit to the repository. A friend of mine recently said that he found it amazing to see what one person alone could put together - if I take a look at what SimpleSite has become since I started it early this year, I *am* humbly amazed. The administration interface is getting along very nicely, the media library works well and the overall codebase is quite solid now.

All in all the project is nearing a stage where a first alpha release can be considered, but that will still have to wait until the current site I am doing with SimpleSite is finished, so probably not before this summer. Nevertheless, the current CVS version is quite stable and the included example site already has a few interesting pages worth looking at.

To retrieve the current version from my SVN repository, use your SVN client (I recommend TortoiseSVN for Windows users) to check it out from this address:

http://sebastian.mordziol.com/svn/SimpleSite/trunk

Afterwards, edit the config/config.php file to define the paths on your system and you're all set. Post any feedback to sebastian@mordziol.com and report bugs/feature requests via the Trac ticket system.


Older news

Visit the news archive.

Sponsored links: