About Sourdough

Recently Updated Pages
21 Feb 10, 23:55   Home [Diff]
21 Feb 10, 23:53   Development [Diff]
08 Dec 07, 13:22   News [Diff]
08 Dec 07, 13:19   Changes [Diff]
05 May 06, 13:11   Installation [Diff]
12 Mar 06, 15:07   Components [Diff]
07 Jan 06, 08:57   Database Abstraction [Diff]
27 Dec 05, 09:50   Getting Started [Diff]
11 May 04, 14:28   Overview [Diff]
09 May 04, 18:16   License [Diff]
09 May 04, 18:03   About Sourdough [Diff]
09 May 04, 17:46   Credits [Diff]
09 May 04, 17:36   Design [Diff]
09 May 04, 11:46   FAQ [Diff]

Sourdough is a comprehensive web application framework for PHP5.

Sourdough provides developers with real-world solutions for common system components such as User Management, Session Handling, User Authentication, Exception Handling and Logging, Template System as well as Form Building and Handling. It does also include a database abstraction layer with excellent support for the popular MySQL database as well as support for many other database systems like MSSQL, PostgreSQL, and the new lightweight SQLite.

Sourdough's extensive feature set can also simplify or eliminate many common, and often tedious, programming tasks.


Sourdough provides the following distinguishing features:

  • Built for PHP5: new object model
  • Fully object-oriented API [1]
  • Contains extensive unit test framework
  • Truly independent. Database interactions with Sourdough are truly independent.
  • Easy to use. All modules are accessed by a global factory. Dependencies are resolved by Sourdough itself.

Why Another Framework?

Good question! Right, Sourdough is a YAPF - Yet Another PHP Framework. Especially now, as interest on PHP 5 is growing, there are more and more frameworks beeing developed. Each of them provides us with nicer code, more functionality and higher abstraction. Still, there is no perfect framework. Some frameworks better fit for this project, some better fit for another. And usually, designing a framework is just the consequence of a larger growing codebase of some independent projects. A framework then is usually based on existing code. No wonder there are some many frameworks around.

As far as it concerns PHP, I was pretty disappointed up to now. There was not a lot of clean code around. The only projects like PEAR, Horde or BlueShoes were huge and tricky to get into. The main goal of Sourdough is not to provide you with uncountable features and highest possible complexity. The main goal is to provide you with a easy-to-use light weighted tool for daily web applications.

The database abstraction layer [2] that comes with Sourdough is somehow more flexible than others. It attempts to make your database applications completely portable without loosing the power of your RDBMS.

Sourdough does not intend to be the perfect PHP framework. It just wants to open your eyes if you haven't found anything useful yet. Give it a try!

Driven by coWiki 0.3.4 web collaboration tool.