cellpylib
CellPyLib, A library for working with Cellular Automata, for Python.
Decision gist · record as of 2026-08-14
Yes, if you need to simulate 1D or 2D cellular automata on regular grids for education or research and can accept that the package is no longer maintained. The code is stable and marked production-ready, but expect no updates for dependency incompatibilities or Python version changes. Verify compatibility with your NumPy and Matplotlib versions before committing to it in a production workflow.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires NumPy and Matplotlib; Python >3.6 required.
- Installation requires NumPy and Matplotlib alongside Python 3.6+.
- The package is marked abandoned—last release was 2023-02-15 and no commits since 2023-02-21—so expect no maintenance, bug fixes, or dependency updates going forward.
License · maintenance · safety
Apache License 2.0 (permissive) — Licensed under Apache License 2.0 (permissive), which allows commercial and private use with minimal restrictions, though you must include a copy of the license and state significant changes.
last release 2023-02-15 (1276 days) · last repo commit 2023-02-21 · 246 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 183,863 downloads/mo, #10,056 on PyPI
Alternatives
Verify before relying
pip install cellpylib
import cellpylib as cpl
cellular_automaton = cpl.init_simple(200)
cellular_automaton = cpl.evolve(cellular_automaton, timesteps=100,
apply_rule=lambda n, c, t: cpl.nks_rule(n, 30))
cpl.plot(cellular_automaton)- Whether the package works correctly with modern NumPy/Matplotlib versions despite abandonment.
- Whether periodic boundary conditions are the only supported edge-handling mode.
What it is and what it does
CellPyLib is a Python library for simulating and visualizing cellular automata constrained to regular grids—elementary 1D automata and 2D variants like Conway's Game of Life. It supports configurable neighbourhood sizes, multiple cell states (colors), and both predefined rules (like Wolfram's NKS rules) and custom rule tables. The library is designed for education and research into complex systems and non-linear dynamics on uniform grids.
The package provides built-in functions to evolve automata over time steps, apply various rule types (binary, totalistic, table-based), and measure complexity through metrics like average cell entropy and mutual information. It generates visualizations matching those from Wolfram's cellular automata atlas. However, the project is no longer maintained—the last release was in February 2023 with no subsequent commits—so it will not receive updates for dependency changes or Python version support beyond what was frozen at that time.
Use it for
- Teaching or learning elementary cellular automata and their behaviour under different rule systems.
- Simulating 2D automata like Conway's Game of Life or the Abelian sandpile for research or visualization.
- Measuring complexity in CA dynamics using entropy and mutual information metrics.
- Experimenting with custom rule tables and varying neighbourhood sizes for CA research.
- Reproducing cellular automata from Wolfram's NKS reference or atlas.wolfram.com for verification.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to simulate 1D or 2D cellular automata on regular grids for education or research and can accept that the package is no longer maintained.
The code is stable and marked production-ready, but expect no updates for dependency incompatibilities or Python version changes. Verify compatibility with your NumPy and Matplotlib versions before committing to it in a production workflow.
Install
cellpylib on PyPI
Before you install
Installation requires NumPy and Matplotlib alongside Python 3.6+. The package is marked abandoned—last release was 2023-02-15 and no commits since 2023-02-21—so expect no maintenance, bug fixes, or dependency updates going forward.
Requires NumPy and Matplotlib; Python >3.6 required.
License in practice
Licensed under Apache License 2.0 (permissive), which allows commercial and private use with minimal restrictions, though you must include a copy of the license and state significant changes.
Quickstart
pip install cellpylib
import cellpylib as cpl
cellular_automaton = cpl.init_simple(200)
cellular_automaton = cpl.evolve(cellular_automaton, timesteps=100,
apply_rule=lambda n, c, t: cpl.nks_rule(n, 30))
cpl.plot(cellular_automaton)
Verify before relying
- Whether the package works correctly with modern NumPy/Matplotlib versions despite abandonment.
- Whether periodic boundary conditions are the only supported edge-handling mode.
Package facts
| License | Apache License 2.0 permissive |
| Python support | Supports the current Python release >3.6 |
| Install friction | High. Source build required |
| Runtime dependencies | None |
| Maintenance | Abandoned 1,276 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 183,863 / month, #10,056 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: Python :: 3.6Topic :: Scientific/Engineering :: Artificial Intelligence |
Evidence: cellpylib-2.4.0.tar.gz
Tags
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 › “cellular automata simulation”
- cellpylibCellPyLib simulates 1- and 2-dimensional cellular automata on regular…
- AutomatAutomat provides a Python library for building finite-state machines…
- pyniniPynini compiles grammar rules into weighted finite-state transducers…
Give your agent the search over MCP, or paste the wish link into any chat.
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to call 100+ LLM providers (OpenAI, Anthropic, Gemini, Bedrock, Azure, and others) using OpenAI-compatible API format, available as both a Python SDK and a self-hosted AI Gateway proxy server.
Install it if you need to work with multiple LLM providers or want to centralize LLM routing in your organization.
Client library and CLI tool for downloading, uploading, and managing models, datasets, and repositories on the Hugging Face Hub platform.
Install it if you work with Hugging Face Hub models or datasets.
LangChain provides a framework for building agents and LLM-powered applications by composing language models, tools, and memory through a unified API that abstracts over multiple model providers.
hf-xet provides chunk-based deduplication and efficient file transfer for the Hugging Face Hub, enabling faster uploads and downloads of large files with local disk caching.
Tokenizers converts raw text into token sequences for NLP models, with support for training custom vocabularies and using pre-built tokenizers (BPE, WordPiece) optimized for speed via Rust.
Transformers provides a unified framework for loading, fine-tuning, and running state-of-the-art pretrained models across text, vision, audio, video, and multimodal tasks using PyTorch, JAX, or TensorFlow.
Install it if you need to run or train any transformer-based model for NLP, vision, audio, or multimodal tasks.
See also automaton · contourpy · python-motion-planning · palettable · Automat · vispy · nashpy · lambdalib · Box2D