Seemore is a lightweight PHP-based MVC2 framework inspired by Ruby on Rails. Unlike other frameworks, the intention of Seemore is to be simple, small and lightweight. I also want to promote test-driven development in Seemore by making it easy to write tests for Seemore and automate them. Download the latest version of Seemore here.
Seemore is and will continue to be simple to use. Much like Rails, Seemore will employ convention over configuration at all times. The intention is to allow PHP web-developers to do common tasks easily whilst allowing less common tatsks with only a little extra configuration.
It is my intention Seemore be small. The codebase should be focused to implementing MVC2 and the temptation to bloat Seemore up with a load of functionality should resisted. We have all seen Rails grow into a behemoth, allbeit a revolutionary and very functional behemoth. With that in mind it is not my intention to integrate an ORM layer into Seemore. One could easily use Doctrine (quite big in itself), why re-invent the wheel. However I might include an implementation of something like ActionMailer as I am not aware of such a library in PHP, and ActionMailer is great. Then again, maybe that should be a separate project.
Running or hosting a RoR app requires a lot of memory compared to PHP. It is my intention that Seemore does not change this fact. The memory footprint of a Seemore web-app should not be big because it’s Seemore (the source code or other libraries may make it big, but it won’t be Seemore).
Unit testing, functional testing and continuous integration is something you see mentioned a lot in the same breath as Java, Ruby and even .NET technologies. Test-driven development is pretty much a requirement for any professional software developer. I may be wrong but there is a distinct lack of testing when it comes to PHP development, if only in perception.
I am a software developer that currently specialises in Ruby and Java development. I also dip my toes in C# for some of the projects. I was a commercial PHP developer for a number of years until I got sick of it and moved on to Java and then Ruby and never looked back… until now. With that in mind I may be out of touch as to what is the latest thing in the PHP world, I’m happy to be corrected. To talk to me about Seemore or anything else found here contact me at elwyn at malethan dot com.
Below is the structure for a typical Seemore application. In fact it’s the only Seemore application. It’s actually a rudimentary wiki engine I’m developing to illustrate how Seemore works.
The htdocs folder contains the web application’s static resources such as images, stylesheets or even simple old html files. The .htaccess file redirects all requests that don’t correspond to a static resource to dispatch.php, which in turn loads the web application.
All source code specific to the web application should reside in the src folder. The Seemore application source should reside in a folder called app within the src folder. In this example you will see that there is a controller called default_controller.php in src/app/controllers and a number of views for that controller in the src/app/views/default folder.
When this example project is more complete I’ll elaborate more on the project structure…
Last modified: October 03 2008 18:21:04.