<p><b>gen</b> is a code <b>gen</b>erator that allows you write web apps without having to face and understand the plumbery of a given web framework. <b>gen</b> protects you. Concentrate on functionalities that need to be implemented: <b>gen</b> will fight for you against the low-level twisted machineries and will let you evolve in your pure, elegant and minimalistic Python world.</p>
<p>Install Zope 2.9. On Unix/Linux, the easiest way to do that is to download the <ahref="https://launchpad.net/plone/2.5/2.5.5/+download/Plone-2.5.5-UnifiedInstaller.tgz">Plone unified installer</a>, that includes Zope.</p>
<p>Don't be afraid, you just installed a lot of lines of code, but we will only use a very small subset of it: absolutely no line from Plone, and a tiny subset of Zope, and the Python interpreter that was also included.</p>
<p>Install Appy. Download it <ahref="https://launchpad.net/appy">here</a>, unzip it and install it in the Python interpreter previously mentioned. If you have installed Zope in its standard location at <spanclass="code">/opt/Plone-2.5.5</span>:</li>
<p>Create a Zope instance. A Zope instance is a web server that will listen for browser requests on some port. Launch the script named <spanclass="code">mkzopeinstance.py</span> that ships with Zope. The following lines of code create a Zope instance in <spanclass="code">/home/gdy/instances/RegInstance</span>.</p>
<p>Type anything as username and password: Appy will ignore it and create user <spanclass="code">admin</span>, password <spanclass="code">admin</span>.</p>
<p>Now, we need to write a webapp and install it into this instance. We will create a small webapp, called Registration, that will allow anonymous people to register to some event through the net. The administrator of the event will be able to consult and search registrations. He will also be able to retrieve a PDF version of every registration.</p>
<p>File <spanclass="code">__init__.py</span> is required by Python, to tranform folder Registration into a Python package. File <spanclass="code">Registration.py</span> will contain the definition of the class Registration: one instance of this class will be created and stored in the database every time a user registers itself though the web.</p>