pyheck
Python bindings for heck, the Rust case conversion library
Decision gist · record as of 2026-08-14
Yes, if you need lightweight case conversion and can accept an unmaintained package. The library is stable, has no known vulnerabilities, and the core functionality is unlikely to break. However, do not use it if you require ongoing maintenance, bug fixes, or support for new Python versions beyond 3.7. For active projects, consider a maintained pure-Python alternative.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python >= 3.7; wheels are precompiled for common platforms but installation may require a Rust toolchain on unsupported architectures.
- Medium install friction due to compiled wheels; package is abandoned (last release 2022-02-18, no commits since 2022-07-18), so no maintenance or security updates are forthcoming.
License · maintenance · safety
permissive license (permissive) — MIT License permits commercial and private use with minimal restrictions; you must retain the copyright notice and license text.
last release 2022-02-18 (1638 days) · last repo commit 2022-07-18 · 50 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 285,285 downloads/mo, #8,055 on PyPI
Alternatives
Verify before relying
pip install pyheck
from pyheck import snake
result = snake("We carry a new world here, in our hearts.")
print(result) # 'we_carry_a_new_world_here_in_our_hearts'- What case conversion functions are available beyond snake() (e.g., camelCase, PascalCase, kebab-case support).
- Whether the package handles edge cases like consecutive capitals, numbers, or special characters consistently.
- Performance characteristics compared to pure-Python alternatives for large-scale conversions.
What it is and what it does
PyHeck is a thin Python wrapper around the Rust heck library that converts strings between different naming conventions. It provides functions to transform text into snake_case, camelCase, and other case styles commonly used in code generation, API design, and data serialization. The package is implemented as compiled Rust bindings, making it fast for bulk conversions.
The package has been abandoned since early 2022 with no maintenance or updates since then. While it carries no known vulnerabilities, its lack of active development means bug fixes and feature additions are unlikely. It works with Python 3.7 and later across common platforms via precompiled wheels.
Use it for
- Convert API response field names from snake_case to camelCase for JavaScript clients.
- Transform database column names to Python variable naming conventions during ORM mapping.
- Normalize user input or configuration keys to a consistent case style for comparison.
- Generate code or configuration files that require specific naming conventions.
- Batch-process strings in data pipelines where case conversion is a preprocessing step.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need lightweight case conversion and can accept an unmaintained package.
The library is stable, has no known vulnerabilities, and the core functionality is unlikely to break. However, do not use it if you require ongoing maintenance, bug fixes, or support for new Python versions beyond 3.7. For active projects, consider a maintained pure-Python alternative.
Install
pyheck on PyPI
Before you install
Medium install friction due to compiled wheels; package is abandoned (last release 2022-02-18, no commits since 2022-07-18), so no maintenance or security updates are forthcoming.
Requires Python >= 3.7; wheels are precompiled for common platforms but installation may require a Rust toolchain on unsupported architectures.
License in practice
MIT License permits commercial and private use with minimal restrictions; you must retain the copyright notice and license text.
Quickstart
pip install pyheck
from pyheck import snake
result = snake("We carry a new world here, in our hearts.")
print(result) # 'we_carry_a_new_world_here_in_our_hearts'
Verify before relying
- What case conversion functions are available beyond snake() (e.g., camelCase, PascalCase, kebab-case support).
- Whether the package handles edge cases like consecutive capitals, numbers, or special characters consistently.
- Performance characteristics compared to pure-Python alternatives for large-scale conversions.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.7 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Abandoned 1,638 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 285,285 / month, #8,055 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Rust |
Evidence: pyheck-0.1.5-cp37-abi3-macosx_10_7_x86_64.whl; pyheck-0.1.5-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl; pyheck-0.1.5-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; pyheck-0.1.5-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; pyheck-0.1.5-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; pyheck-0.1.5-cp37-abi3-manylinux_2_17_ppc64.manylinux2014_ppc64.whl; pyheck-0.1.5-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl; pyheck-0.1.5-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl; pyheck-0.1.5-cp37-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.whl; pyheck-0.1.5-cp37-abi3-musllinux_1_2_aarch64.whl; pyheck-0.1.5-cp37-abi3-musllinux_1_2_armv7l.whl; pyheck-0.1.5-cp37-abi3-musllinux_1_2_i686.whl; pyheck-0.1.5-cp37-abi3-musllinux_1_2_x86_64.whl; pyheck-0.1.5-cp37-abi3-win32.whl; pyheck-0.1.5-cp37-abi3-win_amd64.whl
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 › “case conversion library”
- pyheckConverts strings between case styles (snake_case, camelCase, etc.)…
- textcaseConverts strings between different text case formats (snake_case,…
- case-converterConverts strings between different naming conventions (camelCase,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Text Processing packages
A drop-in replacement for Python's standard `re` module that adds advanced regex features like nested sets, fuzzy matching, lookaround in conditionals, and full Unicode case-folding while maintaining backward compatibility.
pyparsing provides a library for building text parsers directly in Python code using composable grammar classes, handling quoted strings, whitespace variation, and embedded comments without regex or lex/yacc.
Install it if you need to parse text or define grammars programmatically.
fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.
Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.
Docutils converts plaintext documentation in reStructuredText format into multiple output formats including HTML, XML, and LaTeX using a modular processing system.
RapidFuzz provides fast fuzzy string matching using Levenshtein Distance and related metrics, implemented mostly in C++ with Python bindings for rapid similarity scoring and approximate string matching.
Install it if you need fuzzy string matching; it's a solid replacement for FuzzyWuzzy with better licensing and performance.
tinycss2 parses CSS strings into token and block objects, and generates CSS strings from those objects, following the CSS Syntax Level 3 specification without enforcing specific properties or values.
Install it if your project requires CSS tokenization or syntax manipulation.
See also pyhumps · stringcase · camel-converter · case-convert · case-conversion · boa-str · textcase · StrEnum · jinja2-strcase · case-converter