Inspiration is not the exclusive privilege of poets and artists generally. There is, has been, and will always be a certain group of people whom inspiration visits. It’s made up of all who’ve consciously chosen their calling and do their job with love and imagination.

Wislawa Szymborska

Canvas is a web application development framework for PHP5, written by Matt Todd for Clayton State University.

About Canvas

With the rise of multitudes of frameworks and component libraries, such the prominent PHP frameworks CakePHP, Zend Framework, and eZ Components, and the venerable Ruby on Rails, it's easy to get lost in the sea of choices. What makes Canvas distinct and desirable?

[H]e who sinks himself in the one becomes necessarily further removed from the other....

René Guénon, East and West

The focus of the design of Canvas is the ease of use and the semantic beauty of developing web applications. Decoupling is heavily encouraged and aesthetic simplicity is completely natural. No longer are you forced to work with SQL statements when you choose to use the Canvas ORM (Object Relational Model) system: querying a database is as simple as $shoe->find_by_color('green'). What could be more natural?

Canvas is the byproduct of a need, firstly, for a web application to handle file distribution within a department of Clayton State University, a four year university on the south side of Atlanta. The department decided to standardize web application development for all projects, which necessitated a robust yet simple framework.

Secondly, with emerging agile development methods and concepts, and with the rise of beautiful frameworks like Ruby on Rails, it was apparent that a framework promoting good organization, concepts, and semantics could be created.

We should be taught not to wait for inspiration to start a thing. Action always generates inspiration. Inspiration seldom generates action.

Frank Tibolt

But with all of the other options for PHP or even other dynamic languages, why choose Canvas? Of course, choice is all about users' tastes, and if Canvas doesn't fit the needs or the tastes of you, the developer, then it is not for you. However, we think that Canvas is perfect for medium to large projects or for any developer that wants a semantic and beautiful development environment, something we don't believe the Zend Framework, Symfony, or CakePHP provides (among others).

Documentation and API

A lot of work has been put into the documentation for Canvas, and we hope that it is enjoyable to read. Focus has been placed on the newcomer to Canvas as it is a relatively new solution. As such, the more advanced documents are a little sparse for internal details, and, at times, content. We apologize: we're addressing this as quickly as we can. Bear with us as we mature this wonderful framework.

Here are a few articles you may be interested in:

Download Canvas

Download Canvas 1.1

Instructions for setting up your first Canvas web application are now available! It is highly recommended that you read through this article.

Real World Canvas Apps

Here is a list of real world Canvas web applications.

  • Omnia

    Omnia is a file distribution system to replace a similar yet antiquated application in the technical assistance department of Clayton State University. This same department has verified that they will continue using Canvas for a myriad of other applications they are in need of development.

    Clayton State University is the official sponsor of Canvas: without their support, Canvas would not exist.

  • Finances

    Finances is a personal project of core member and Canvas lead developer Matt Todd to track personal finances, to see trends in spending, costs, and income, keep track of bills, and, ultimately, help you prepare for handling taxes.

    Finances will be released for free under the same license as Canvas. Keep up-to-date here.

    See the demo movie (4.6mb), and check out the screenshots (accounts overview, transactions, view transaction, edit transaction, manage users, edit user, and manage actions).

License

Canvas is licensed under the MIT License, providing the most amount of flexibility for private and commercial use.

Contact

Canvas development is being led by Matt Todd, an employee for the OITS's The HUB at Clayton State University. Contact Matt Todd via email, or visit his personal blog.

News RSS Feed

  • Jun 1 2006
    Canvas 1.1 Released! — A lot of work has been done in preparation of this latest release of Canvas. Though slated for version 1.3 or 1.5, I've gone ahead and implemented the Router2 and Config2 components that had recently been refactored. They were ready and just waiting to be implemented. I felt that these components would really aid in the usability of the system. In addition to these components being implemented, bugs... read the rest
  • Apr 14 2006
    Canvas 1.0.3 Released!Canvas has officially been moved to version 1.0.3! We're very close to 1.1, and on the way we've been tuning the Model 2.0.3 functionality as well as merging things into a more standard, conventions-based method for accessing resources, allowing the developer (you) more control over conventions used within the system. Do you want to use a different... read the rest
  • Apr 13 2006
    Canvas Tumblog — With all of the fantastic articles, tools, sites, et al floating around on the web, I think it would be a shame not to share it with you! I've decided to start a tumblog, similar to Project.ioni.st and Anarchaia, in the near future. Keep your eyes peeled. And as a good way to start, here are a few great links... read the rest
  • Apr 7 2006
    Canvas 1.0.2 Released! — More minor updates and some even more major updates. Notables: initial AJAX support. (Simple, yet effective!) Also, more tweaks on performance and on how Models handle themselves. Performance increases are always nice, even if a little.
  • Apr 3 2006
    Canvas 1.0.1 Released! — With this new release, minor updates have been made, as well as some bugs. I'll be working on a change-log so that you can follow all of the changes. For now, rejoice!
  • Apr 2 2006
    CSS Naked Day & More Progress — This site and my personal blog, Maraby.com, will be participating in CSS Naked Day. Fear not, your eyes will not be scarred! This is simply to show that websites can still be functional and look remotely good without any styling (via CSS)! Also, a great deal of progress is being made on Canvas 1.0.1 and 1.1 is not far behind. Also, Finances is very nearly complete. Screenshots... read the rest

Books We Recommend

Shop at Amazon.com!