Script that creates a Grok project directory, installs Grok, the Grok Toolkit and the Zope Toolkit and sets up a complete skeleton for a new Grok web application.
Latest commit d2aff57 Mar 13, 2013 @strichter strichter Updated Travis YAML.
Failed to load latest commit information.
grokproject update for the grokproject buildout *and* project templa… Feb 14, 2013
.travis.yml Updated Travis YAML. Mar 13, 2013
CHANGES.txt Back to development: 2.10 Feb 14, 2013
COPYRIGHT.txt Conform to repository policy Jun 3, 2010
LICENSE.txt Conform to repository policy Jun 3, 2010
README-shorttests.txt Add some explanations. Jan 24, 2009
README.txt Added daemon part to resulting buildout.cfg Nov 1, 2010
TODO.txt integrate with grokcore.startup Feb 19, 2009
buildout.cfg we don't depend on zope.testing for the tests anymore Feb 19, 2011 Back to development: 2.10 Feb 14, 2013 Rename tests_paste to tests Feb 2, 2011
tests.txt Rename tests_paste to tests Feb 2, 2011
upgrading.txt Add draft of an upgrade-guide for grok/grokproject. Sep 13, 2009


grokproject provides an easy way to get started with a `Grok
<>`_ web application.  Simply
install ``grokproject``::

  $ easy_install grokproject

If you have an old version of grokproject installed then you can
upgrade doing::

  $ easy_install -U grokproject

Afterwards you can run the ``grokproject`` script with the name of the
project you'd like to create as an argument::

  $ grokproject MammothHerd
  ... many lines of output here

This will not only create a project area for you to work in, it will
also download and install Grok and its dependencies.

After the project area has been created successfully, you will find an empty
Python package "skeleton" in the ``src`` directory in which you can place the
code for your web application.

To start the application server, execute::

  $ cd MammothHerd
  $ bin/paster serve parts/etc/deploy.ini

Start/stop it in daemon mode::

  $ bin/daemon start/stop

There is also an Ajax enabled debugger (point your browser to
http://localhost:8080/@@login.html when using this)::

  $ bin/paster serve parts/etc/debug.ini

To start the interactive debugger prompt::

  $ bin/interactive_debugger

To run an ad-hoc Python script against a full setup application::

  $ bin/interactive_debugger [name_of_python_script].py

Python scripts run this way, will have access to a ``root``, ``debugger``, and
an ``app`` object avaible for "interacting" with the application environment.

For those who know paster: ``grokproject`` is just a wrapper around a
paster template.  So instead of running the ``grokproject`` command,
you can also run::

  $ paster create -t grok MammotHerd

All configuration files used for running Grok can be found in the
``parts/etc/`` directory of your project. These configuration files are
generated automatically from the templates in ``etc/`` on each ``buildout``
run. To modify the configuration files edit the approriate templates in
``etc/`` and rerun ``buildout`` afterwards::

  $ bin/buildout

This will rebuild the files in ``parts/etc/``.