Saturday 20th 2024f April 2024 08:50:46 AM  
      Inphusion is a PHP Development framework that provides object persistence, an interface widgets library, templating system and a lot more...
Main:
› Overview › History › Documentation (soon) › Download (soon) › Sourceforge Page
Components:
› Object Architecture › Data Trees › Interface Widgets › Themes and Templates › G E M S
Credits
This site design is from a template called Sinorca from OSWD.

Hosted by
SourceForge.net Logo

What is Inphusion?

Inphusion is a PHP development framework that provides:

So...?

Inphusion has been kicking around in my head for about three years now. Some code is written but not all. When asked to create an architecture to handle POMS, Problems and BugTrack, it occurred to me that this concept could be useful! To understand what I'm proposing, you need to read this page, then the Objects page, then the Data Hierarchies page, and finally the GEMS page. You can pretty much ignore templating and widgets for now.

Marketing Bumpf

Design goals are focussed on run-time performance first and foremost. Applications developed with Inphusion only ever load the bare minimum of the framework at any one time. Classes are loaded dynamically as required and even then rarely-used functionality is loaded separately via a decorator pattern construction.

Simplicity is also a key consideration for Inphusion. There are better frameworks out there - take a look at WACT for example - but they aren't easy to pick up for the many PHP developers who perhaps don't have a high level of formal training or experience in software development. Inphusion mirrors my own experience - I had the initial idea three years ago, but back then, I didn't have the skill to implement it. In fact, Inphusion has been through six complete re-writes as I've learned, sometimes painfully, about a "better way" to accomplish something. So in all this learning, Inphusion isn't about adding an extra layer of complexity upon a "developing developer." It's supposed to make life easier, and if it doesn't then I've missed the point! Anything you learn while getting to grips with Inphusion should be 99% standard stuff that you just haven't encountered before.

Finally, generality is important. Inphusion doesn't do anything on its own. I've consistently resisted the temptation to "applicationise" the framework - give it a Forum, a Content Management System, a Groupware suite or whatever. Inphusion is (I hope) a great way to do all those things, and a whole lot more - but that's not its focus.

Status

Inphusion is not ready yet. :-((( Well actually it is, but one of the major components - the hierarchical data structures - is not open source, or at least not open source "enough"! What do I mean by that? I couldn't solve a particular problem, so I spoke to a developer where I work. He showed me how to solve it using code he'd written for my employer. The result is that I currently don't have a version of Inphusion that I can release. However I'm refactoring that section right now so that it isn't "tainted" in that way. For now, Inphusion exists on a private account with CVSdude.org.