Skip to main content

Grok

What is grok?

Grok is a smashing web framework based on Zope Toolkit technology.

Grok uses the Component Architecture and builds on Zope concepts like content objects (models), views, and adapters. Its simplicity lies in using convention over configuration and sensible defaults when wiring components together. That means neither a configuration language like ZCML nor a lot of repetition are needed to create a web application with grok.

You can find out much more about Grok at our http://grok.zope.org website.

Who is grok?

Grok is a friendly caveman from the Stone Age. He has a big club that he hunts mammoths with. He will also use this club to smash anything he doesn’t like.

“ME GROK SMASH ZCML!”

Getting grok

The easiest way to get started with grok is to install the grokproject package (e.g. via pip install grokproject) and then create a new project area by calling the grokproject script like so:

$ grokproject MyProject
... many lines of output here

This will create a project area in MyProject as well as download and install grok.

You can also get grok from GitHub:

git clone git@github.com:zopefoundation/grok.git

Then follow the instructions of INSTALL.txt.

CHANGES

5.1 (2026-03-20)

  • Move package metadata from setup.py to pyproject.toml.

  • Add support for Python 3.14.

  • Drop support for Python 3.9.

5.0 (2025-06-18)

  • Replace pkg_resources namespace with PEP 420 native namespace.

4.1 (2025-05-28)

  • Add support for Python 3.12, 3.13.

  • Drop support for Python 3.7, 3.8.

4.0 (2023-07-12)

  • Add support for Python 3.7, 3.8, 3.9, 3.10, 3.11.

  • Drop support for Python 2.7, 3.4, 3.5, 3.6.

  • Fix tests to be able to run with zope.component >= 5.

3.0.1 (2018-01-12)

  • Rearrange tests such that Travis CI can pick up all functional tests too.

3.0.0 (2018-01-05)

  • Python 3 compatibility.

2.3 (2017-08-11)

  • Introduce IntId index that is more optimized to index values by their int ids.

2.2.1 (2016-01-29)

  • Update tests.

2.2 (2015-11-20)

  • Introduce Datetime index that’s more optimized for index datetime objects. Please note the index uses seconds-resolution (the integer timestamp representing the datetime’s value).

2.1 (2015-06-11)

  • Make possible to install a catalog in a site on a different event than IObjectAddedEvent using the grokcore.site.install_on directive.

2.0 (2013-05-07)

  • Rename IIndexDefinition and IndexDefinition into IAttributeIndexDefinition and AtributeIndexDefinition respectively. This is used for the current index “classes” and allow for setup() magic for attribute indexes when creating new catalogs.

    This allows for IIndexDefinition and IndexDefinition to be used for simpler catalog index definitions where no Grok magic is applied when creating catalogs.

1.0 (2012-05-01)

  • Initial fork from Grok.

Release files for grokcore.catalog 5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for grokcore.catalog 5.1
File Size Uploaded
grokcore_catalog-5.1.tar.gz 20.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for grokcore.catalog 5.1
File Interpreter ABI Platform
grokcore_catalog-5.1-py3-none-any.whl Python 3 none any Details

Total release size: 53.9 kB

Release files / grokcore_catalog-5.1.tar.gz

Download URL grokcore_catalog-5.1.tar.gz
Size 20.8 kB
Tags Source
SHA-256 checksum
How to use checksums
8ca5bf7789067320a93563109ee03076bea230932cefbd2997fc4b68c50a24df
BLAKE2b-256 checksum
How to use checksums
f9e875bc756dde6b89729b12d06b50e0c11a44b67ebc5ed85f33df8054171a93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / grokcore_catalog-5.1-py3-none-any.whl

Download URL grokcore_catalog-5.1-py3-none-any.whl
Size 33.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
101dd0931f5954c33d6aec3eb85bce3901a92d144582c6ade7ac4c1e1dae5b3f
BLAKE2b-256 checksum
How to use checksums
be3b818a195a4db3333f9820c84407726e970d070ffd6e2d092a5ebcd39e5d5f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release history Release notifications | RSS feed

This release

5.1 This release

2 release files

5.0

2 release files

4.1

2 release files

4.0

2 release files

3.0.1

1 release file

3.0.0

1 release file

2.3

1 release file

2.2.1

1 release file

2.2

1 release file

2.1

1 release file

2.0

1 release file

1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page