$npx skillfedfor your agent

abstractcp

Create abstract class variables

With conditionsPyPI Software DevelopmentReleased May 202476.6K downloads / mopermissive licensePure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — abstractcp-1.0.0-py3-none-any.whl
v1.0.0 · released 2024-05-20 · Python >=3.8

Yes, if you need to enforce required class-level configuration in inheritance hierarchies and want static type-checker support. The package is small, has no dependencies, and solves a real gap in Python's standard library. The aging maintenance status is not a blocker for a stable, narrow-scope tool, but verify that the pattern fits your use case—it is not a general-purpose utility.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.8 or higher; abstract properties must be defined in classes that inherit directly from acp.Abstract.
  • Low install friction; pure Python wheel with no runtime dependencies.
  • Maintenance is aging—last release was 2024-05-20 and last commit 2026-01-04, with minimal repository activity (9 stars), but no active issues reported.

License · maintenance · safety

permissive license (permissive) — MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute freely provided you include the license notice.

last release 2024-05-20 (816 days) · last repo commit 2026-01-04 · 9 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 76,571 downloads/mo, #14,614 on PyPI

Verify before relying

pip install abstractcp

import abstractcp as acp

class Parser(acp.Abstract):
    PATTERN: str = acp.abstract_class_property(str)

class MyParser(Parser):
    PATTERN = r"my_pattern"

# Attempting to instantiate Parser directly or a subclass without PATTERN raises TypeError
  • Whether the package is actively maintained or in maintenance-only mode given the aging status and sparse commit history.
  • Real-world adoption patterns beyond the stated download count to assess whether the pattern it solves is widely needed.
Same gist for agents: .md · .json

What it is and what it does

AbstractCP provides a way to define abstract class properties—class-level configuration that subclasses must explicitly set—with support for Python's type hints and static type checkers like mypy. You inherit from the `Abstract` base class and mark required class properties using `abstract_class_property(type)`, which enforces that concrete subclasses provide a value and raises a `TypeError` if they don't. This solves a gap in Python's standard `abc` module, which has no built-in mechanism for abstract class variables.

The package is designed to be lightweight and Pythonic: it does all validation at class definition time (no runtime overhead), integrates cleanly with type hints, and produces clear error messages when a subclass forgets to define a required property. It supports multi-level inheritance—an abstract class can have abstract children—and works with Python 3.8 and higher.

Use it for

  • Define a base parser class with an abstract PATTERN property that each parser subclass must set before use.
  • Create a base array/tensor class that requires subclasses to declare their DIMENSIONS as a class constant.
  • Enforce that configuration subclasses define required settings (e.g., API endpoint, database URL) at class definition time.
  • Build plugin systems where each plugin subclass must declare its name, version, or handler type.
  • Ensure type-safe class hierarchies where mypy validates that abstract properties are satisfied before instantiation.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need to enforce required class-level configuration in inheritance hierarchies and want static type-checker support.

The package is small, has no dependencies, and solves a real gap in Python's standard library. The aging maintenance status is not a blocker for a stable, narrow-scope tool, but verify that the pattern fits your use case—it is not a general-purpose utility.

Install

abstractcp on PyPI

Before you install

Low install friction; pure Python wheel with no runtime dependencies. Maintenance is aging—last release was 2024-05-20 and last commit 2026-01-04, with minimal repository activity (9 stars), but no active issues reported.

Requires Python 3.8 or higher; abstract properties must be defined in classes that inherit directly from acp.Abstract.

License in practice

MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute freely provided you include the license notice.

Quickstart

pip install abstractcp

import abstractcp as acp

class Parser(acp.Abstract):
    PATTERN: str = acp.abstract_class_property(str)

class MyParser(Parser):
    PATTERN = r"my_pattern"

# Attempting to instantiate Parser directly or a subclass without PATTERN raises TypeError

Verify before relying

  • Whether the package is actively maintained or in maintenance-only mode given the aging status and sparse commit history.
  • Real-world adoption patterns beyond the stated download count to assess whether the pattern it solves is widely needed.

Package facts

Licensepermissive license permissive
Python supportSupports the current Python release >=3.8
Install frictionLow. Pure-Python wheel
Runtime dependenciesNone
MaintenanceAging 816 days since the last release
Last repo commit
First released
Downloads76,571 / month, #14,614 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3

Evidence: abstractcp-1.0.0-py3-none-any.whl

Tags

Capabilities
abstract class properties pythonabstract class variablesenforce class configurationabstract class constantsclass property inheritance
Topics
abstract-classestype-hintsclass-properties

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “abstract class properties python”

  • abstractcpAllows you to define abstract class properties that subclasses must…
  • python-interfaceDeclares interfaces and statically asserts that classes implement…
  • objectoryProvides dynamic object factory implementations using abstract…

Give your agent the search over MCP, or paste the wish link into any chat.

More Software Development packages

typing-extensions Worth it
PyPI · Software Development · released Jul 2026

Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.

PSF-2.0pure Python · 3.9+
1.9Bdownloads / mo
numpy Worth it
PyPI · Software Development · released Aug 2026

NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.

BSD-3-Clause AND 0BSD AND MIT AND Zlib AND CC0-1.0compiled wheel · 3.12+
1.1Bdownloads / mo
fastapi Worth it
PyPI · Software Development · released Jul 2026

FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.

MITpure Python · 3.10+
568.6Mdownloads / mo
annotated-doc With conditions
PyPI · Software Development · released Jul 2026

Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.

MITpure Python · 3.9+
456.2Mdownloads / mo
typer Worth it
PyPI · Software Development · released Aug 2026

Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.

Install it if you are building CLIs in Python.

MITpure Python · 3.10+
369.3Mdownloads / mo
distlib With conditions
PyPI · Software Development · released Jun 2026

Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.

permissive licensepure Python
323.3Mdownloads / mo

See also docstring-inheritance · python-interface · flake8-class-attributes-order · xarray-dataclass · async-property · resolvelib · type-enforced · property-manager · useful-types