Skip to main content

Grok-like configuration for catalog and indexes

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

grokcore_catalog-5.1.tar.gz (20.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

grokcore_catalog-5.1-py3-none-any.whl (33.1 kB view details)

Uploaded Python 3

File details

Details for the file grokcore_catalog-5.1.tar.gz.

File metadata

  • Download URL: grokcore_catalog-5.1.tar.gz
  • Upload date:
  • Size: 20.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for grokcore_catalog-5.1.tar.gz
Algorithm Hash digest
SHA256 8ca5bf7789067320a93563109ee03076bea230932cefbd2997fc4b68c50a24df
MD5 92d56ad144f70fd824f58fde7805f452
BLAKE2b-256 f9e875bc756dde6b89729b12d06b50e0c11a44b67ebc5ed85f33df8054171a93

See more details on using hashes here.

File details

Details for the file grokcore_catalog-5.1-py3-none-any.whl.

File metadata

  • Download URL: grokcore_catalog-5.1-py3-none-any.whl
  • Upload date:
  • Size: 33.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for grokcore_catalog-5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 101dd0931f5954c33d6aec3eb85bce3901a92d144582c6ade7ac4c1e1dae5b3f
MD5 be6de7c2e8de8cfa423b98bfa1143cb4
BLAKE2b-256 be3b818a195a4db3333f9820c84407726e970d070ffd6e2d092a5ebcd39e5d5f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page