scikit-base
Base classes for sklearn-like parametric objects
What it is and what it does
scikit-base is a framework library that provides reusable base classes for building machine-learning-like packages following scikit-learn and sktime conventions. Rather than implementing algorithms, it standardizes the structure and behavior of parametric objects so that packages built on top of it inherit consistent interfaces and behavior. This reduces boilerplate and makes it easier for developers to create new packages that feel familiar to users of the scikit-learn ecosystem.
The package has no runtime dependencies, making it lightweight to add to your project. It targets developers building new ML frameworks or domain-specific packages who want to adopt scikit-learn-like design patterns without reimplementing the foundation. The active maintenance and recent release history suggest it is actively used and developed.
Use it for:
- Building a new machine-learning package that needs to follow scikit-learn conventions for parameter handling and API consistency.
- Creating domain-specific estimators that inherit standard parametric object behavior from a common base.
- Developing a framework extension or plugin system where all components should share a common interface.
- Standardizing internal utilities within a research project to ensure consistent object behavior across modules.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides base classes and design patterns for building scikit-learn-like and sktime-like parametric objects, making it easier to create packages that follow these established conventions.
Yes, if you are building a new ML package or framework and want to adopt scikit-learn-like conventions without implementing the foundation yourself. The zero runtime dependencies, permissive BSD 3-Clause License, and active maintenance make it a low-risk dependency. Not relevant for end-users of ML packages—primarily a tool for package developers and framework authors.
Install
scikit-base on PyPI
pip
pip install scikit-baseuv
uv add scikit-basepoetry
poetry add scikit-baseInstalling scikit-base
Before you install
Low friction installation with no runtime dependencies. Active maintenance with a recent release (12 days old) and ongoing repository activity.
License in practice
BSD 3-Clause License permits commercial and private use with minimal restrictions; you must retain copyright notices and the license text in distributions.
Quickstart
pip install scikit-base
import scikit_base
Requires Python 3.10 or later (supports 3.10, 3.11, 3.12, 3.13, 3.14).
Verify before relying
- What specific base classes and design patterns are provided for parametric objects.
- Whether the package includes utilities for parameter validation, serialization, or introspection.
- Performance or memory overhead of using these base classes in production systems.
- How to use the framework factory to build new packages following scikit-learn conventions.
Package facts
| License | BSD 3-Clause License Copyright (c) 2022, skbase Developers All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (<3.15,>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 12 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 2,591,880/month — #2,979 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: scikit_base-1.1.0-py3-none-any.whl
Keywords: data-science, machine-learning, scikit-learn
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
sktimesktime provides a unified interface for time…
permissive · top 5,000 on PyPI
skforecastSkforecast is a Python library for time series…
permissive · top 15,000 on PyPI
neuralforecastNeuralForecast provides a collection of neural…
permissive · top 15,000 on PyPI
pycaretPyCaret automates machine learning workflows by…
permissive · top 15,000 on PyPI
kfactoryKFactory is a Python framework for designing…
unclear · top 15,000 on PyPI
cf-unitscf-units provides units of measure as defined…
permissive · top 15,000 on PyPI
feature-engineFeature-engine provides transformers for…
permissive · top 15,000 on PyPI
scikit-learn-extraExtends scikit-learn with additional machine…
permissive · top 15,000 on PyPI
pytorch-forecastingPyTorch Forecasting provides neural network…
permissive · top 15,000 on PyPI
hmmlearnhmmlearn implements unsupervised learning and…
permissive · top 5,000 on PyPI