- Name: John Beppu
- Project Title: Squatting On Everything
- Synopsis: Squatting is unique among web frameworks, because it has the ability to embed itself into other frameworks. This ability has been demonstrated with the Squatting::On::Catalyst module that shows that you can take a whole Squatting application and embed it directly into a Catalyst application. (To see an example of this, take a look at the Pod::Server documentation.) I'd like to expand Squatting's range by writing adapters for more frameworks and environments.
Squatting On Everything
Squatting is unique among web frameworks, because it has the ability to embed itself into other frameworks. This ability has been demonstrated with the Squatting::On::Catalyst module that shows that you can take a whole Squatting application and embed it directly into a Catalyst application. (To see an example of this, take a look at the Pod::Server documentation.)
I'd like to expand Squatting's range by writing adapters for more frameworks and environments.
Benefits to the Perl Community
Imagine that you built a web application, and then imagine you wanted to add a blog, or a forum, or a picture gallery, or a store to your site. What's a Perl programmer to do? Web applications haven't historically been conducive to modular composition.
However, Squatting can change all this for the better. Not only will Squatting let you embed whole web applications into your existing site, it'll even let you replace the layout of the Squatting application so that you can keep a common look and feel across the entire site. The best part is that you don't have to throw away all your old work and join the Squatting cult. You can keep all your old work and make Squatting adapt to you.
Unfortunately, these hypothetical, embeddable, Squatting applications have yet to be written, but even before we get to that part, I'd like to make sure Squatting can be embedded in as many places as possible.
This will lay the groundwork for a future where adding major functionality to your web site will be as easy installing a module from CPAN and adding a few lines of glue code to your existing application.
This project is fairly straightforward. For each framework, I have to translate the HTTP request info from their world view into terms Squatting can understand. Then, after I let Squatting handle a request, I have to take the output and translate it back into terms that the original framework can understand. Most of the difficulty in this project comes from having to learn how the foreign framework handles HTTP requests and responses.
5 weeks to implement and test the modules mentioned above is my conservative estimate, and I can begin work immediately.