WebGen // The PHP Developer Helper

Get rapid prototypes, cohesion between your database and PHP scripts, a templating system that works with designer's tools, and more. It's true rapid application development for the web.

Welcome to WebGen

Please visit the Sourceforge Homepage of WebGen.
Email me with comments and suggestions.

June 29th, 2005
I've committed a few fixes to the CVS tree -- namely, multiple replacements weren't working, and they are now. Also, you can define arbitrary getter functions in your classes and they can be called by putting gen_ in front of them and calling them in square brackets in the template.
October 5th, 2004
I don't know if anyone still reads this anymore, I've been working on a lot of other things. But I'm back working on WebGen a bit, I'll release 0.0.10 with an install script at least. I was thinking of adding various targets, like Java and ASP (I've actually added a conf field, but GenScript doesn't differentiate between languages yet).
August 12th, 2004
Version 0.0.9 has been released. I'd like to move into a 'beta' stage next week now that an architecture is starting to gel.

Here's from the changelog:

--== 0.0.9 ==--
-- the DB_PASS is hidden when you set debug to TRUE so there's no over the shoulder password snatching.
-- removed bunk link from index.php since there's a parse error in the GenScript::createJSDB widget (both commented out).
-- updated GenObject::toString($use_html). Can return a text or html string.
-- started updating some of the comments for use with some of the PHP documentation systems. Still needs work.
-- webgen/Makefile has been modified to use macros. It still needs to clean out the copied license, readme and data dirs. If anyone can help, let me know. (The makefile basically is there to help make releases and patches)
-- GenScript should now pick up your custom variables and write them out when you re-generate a prototype from the database. Get/set modifications still aren't copied yet, sorry.

August 9th, 2004
We're now up to 0.0.8 - When you export your database, webgen will automatically include the directory that GenScript targeted with the export; listPeople() was now readded to the person.php script as the example of how plural tags work (sorry, just realized it was missing); and various other little things, including some architecture to build onto the next round of releases...

One little thing I just noticed is the the comment in the 'custom user area' in the created files repeats when you re-export (it treats the old comment as part of your custom code, then adds a new comment).

I know it's still early, but I'd like to move this into beta with a limited management interface, some more documentation, and GenScript checking for changes in the get/set funtions.

Should I focus more on prototyping or on templating? Let me know in the WebGen sourceforge forums

August 6th, 2004
There's a problem with the tar file due to make'ing it out of the patch directory. Sorry; I'll post 0.0.5 today -- in the meantime, the CVS version is stable.
August 5th, 2004
WebGen-0.0.4 is out -- it fixes a problem in GenPage (a call to an undefined variable DOCUMENT_ROOT instead of SERVER_DOCUMENT_ROOT according to the new auto-define in webgen.php). It also now automatically includes the data directory. The data download (0.0.4) is also updated to connect properly to the template file (since they no longer have to be in the templates directory).
August 4th, 2004
webgen-0.0.3 is now available for download. GenScript can now export your data into the Javascript Database format, although the application (/apps) to handle this still needs to be put together. Added new things to makefile (see CVS repository for complete patch module) to make ditribution easier.

July 30th, 2004
I've released some files for easy download. Check'em out. I've started to add support in GenConn for multiple databases. Recently one of my clients had no MySQL support (actually, no database support at all...) so I've started to incorporate the Javascript Database. But it's clunky, so GenScript will soon be able to take the data from the tools you're used to using (aka, MySQL) and create the Javascript DB for use in these sites with a click.

To accomodate multiple DB's, GenConn should now handle all sql calls, a big todo, and one that should be done sooner than later.

GenPage also no longer uses the template directory exclusively. It can be set with conf.php. The reason I did this was to make sure that Dreamweaver and other such suites can still link to their images. This also means that the entries in the pages table are relative from whatever your document root is.

And hey, don't forget that you can extend any of these classes for your own purposes.

June 25th, 2004
Initial file upload. Bear with this, it only outlines how I think the templating system should work, and has only a couple of objects included -- but gist of the design is there.

Here's the lowdown on how I see the objects working:
... the DataFactory can assign values right out of the database to a similarly named object. You pass the ID and class and it will fill in, returning an object fresh out of the oven with all your vars filled.
... the Page object compiles the template with the designers tags. Eventually, I'd like to be able to serialize a compiled page for speed, allowing for quick retrieval later.
... the Object object provides basic functions (like unpacking args from function calls, toString services, etc)
... the Collection object, which can string together, say, the serialized pages of a website, or a multi-page form.

Developers: Andrew Ettinger