--- id: zope-contentprovider version: "7.0" license: ZPL-2.1 license_treatment: unclear maintenance: active --- # zope.contentprovider — Content Provider Framework for Zope Templates License: unclear · Maintenance: active · Downloads: 131.0K/mo ## What it is and what it does zope.contentprovider is a framework for building web applications where page content is assembled dynamically through a component lookup system rather than static templates. Instead of writing monolithic templates or template hierarchies with METAL macros, you define content provider objects that are registered and discovered at runtime based on your application's configuration. This allows different parts of a page to be independently developed, tested, and swapped without modifying templates. The package is built on the Zope component architecture and integrates with zope.interface, zope.component, and zope.tales for expression evaluation. It provides a ContentProviderBase class as a simple starting point for implementing providers. The framework is stable and actively maintained, supporting modern Python versions (3.9 through 3.13) and PyPy, with no known security vulnerabilities. Use it for: - Build modular web pages where different sections (header, sidebar, content area) are independently pluggable content providers. - Implement theme systems where content providers are swapped based on user preferences or application state without template changes. - Create reusable page components that can be registered and discovered dynamically across a Zope-based application. - Develop complex web applications where page layout and content composition are driven by configuration rather than template code. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Provides a framework for building componentized web GUI applications where content is dynamically looked up and composed based on application configuration rather than static templates. Yes, if you are building a Zope-based web application and need dynamic, component-driven content composition. The package is stable, actively maintained, and dependency-light within the Zope ecosystem. However, verify that ZPL-2.1 licensing fits your project, and note that this is specialized tooling for Zope applications—not a general-purpose templating library. For non-Zope projects, this is not the right fit. ## Install pip install zope-contentprovider uv add zope-contentprovider poetry add zope-contentprovider ## Installing zope.contentprovider Before you install: Low friction install with a wheel distribution. Active maintenance with recent releases; last commit 2026-02-16. Requires Python 3.9 or later and depends on 8 zope ecosystem packages, all of which are established components. License in practice: Licensed under ZPL-2.1 (Zope Public License). License treatment is marked unclear in the metadata; developers should verify compatibility with their project's licensing requirements before use. Quickstart: pip install zope.contentprovider from zope.contentprovider.provider import ContentProviderBase from zope.interface import implementer @implementer(IContentProvider) class MyProvider(ContentProviderBase): def render(self): return "
Content
" Requires Python 3.9 or later. Integration typically requires ZCML configuration and understanding of the Zope component architecture. Verify before relying: - Whether ZPL-2.1 license is compatible with common open-source and proprietary licensing models - Practical learning curve and documentation depth for developers new to Zope component architecture - Real-world usage patterns and community size beyond download statistics ## Package facts - License: ZPL-2.1 (unclear) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 131.0K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags dynamic content provider framework, zope template content composition, componentized web gui, zope content lookup, template content injection, zope page template providers, zope-ecosystem, template-framework, component-architecture [View on SkillFed](https://skillfed.io/packages/zope-contentprovider) · [View on PyPI](https://pypi.org/project/zope-contentprovider/)