stringcase
String case converter.
What it is and what it does
stringcase is a lightweight utility for converting between string naming conventions. It provides functions to transform input strings into camelCase, snake_case, PascalCase, CONSTANT_CASE, kebab-case, path/case, sentence case, title case, and several other formats. The package has no runtime dependencies and works by parsing word boundaries and applying the target case rules.
The package is widely used but is no longer maintained—the last release was 2017-08-06 and the repository shows no recent activity. While it performs its narrow task reliably for the cases it supports, the lack of maintenance means it will not receive updates for Python compatibility issues, edge cases, or new naming conventions.
Use it for:
- Convert API response field names from snake_case to camelCase for cross-language interoperability.
- Transform database column names to Python variable names in ORM or data-loading code.
- Generate file paths or URL slugs from arbitrary strings with consistent formatting.
- Normalize user input or configuration keys across different naming conventions in a codebase.
- Build code generators that output variable or class names matching a target language's conventions.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Converts strings between different naming conventions (camelCase, snake_case, PascalCase, kebab-case, and others) with a simple function-per-case API.
Yes, but with caution. stringcase is a stable, dependency-free utility that does one thing well and has no known vulnerabilities. However, the package is abandoned (last release 2017-08-06) and may fail on modern Python versions or edge cases. Install it only if you need basic case conversion and can accept the risk of no future maintenance; for active projects requiring ongoing support, consider a maintained alternative.
Install
stringcase on PyPI
pip
pip install stringcaseuv
uv add stringcasepoetry
poetry add stringcaseInstalling stringcase
Before you install
High install friction reported. Package is abandoned—last release was 2017-08-06, over 3295 days ago, with no recent commits. Despite significant popularity, the lack of maintenance means bug fixes and compatibility updates are unlikely.
License in practice
MIT license is permissive; you can use this package freely in commercial and private projects with minimal restrictions, though you must retain the license notice.
Quickstart
pip install stringcase
import stringcase
stringcase.camelcase('foo_bar_baz') # => "fooBarBaz"
stringcase.snakecase('FooBarBaz') # => "_foo_bar_baz"
Verify before relying
- Compatibility with modern Python versions; requires_python is unspecified in metadata.
- Whether the high install_friction flag reflects a known build or dependency issue.
- Current stability and edge-case behavior given the 3295-day gap since last release.
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | high — source build required |
| Runtime dependencies | none |
| Maintenance | abandoned — 3,295 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 7,510,074/month — #1,730 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: stringcase-1.2.0.tar.gz
Tags
More Text Processing packages
A drop-in replacement for Python's standard…
permissive · top 100 on PyPI
pyparsingpyparsing provides a library for building text…
permissive · top 1,000 on PyPI
docutilsDocutils converts plaintext documentation in…
unclear · top 1,000 on PyPI
RapidFuzzRapidFuzz provides fast fuzzy string matching…
permissive · top 1,000 on PyPI
tinycss2tinycss2 parses CSS strings into token and…
permissive · top 1,000 on PyPI
llama-parseLlamaParse parses complex documents (PDFs,…
permissive · top 1,000 on PyPI
casefyCasefy converts strings between different…
permissive · top 5,000 on PyPI
pocketsPockets provides a collection of utility…
permissive · top 15,000 on PyPI
pyheckConverts strings between case styles…
permissive · top 15,000 on PyPI
case-converterConverts strings between different naming…
permissive · top 15,000 on PyPI
pyhumpsConverts strings and dictionary keys between…
permissive · top 5,000 on PyPI
case-convertConverts strings between different case formats…
copyleft · top 15,000 on PyPI
textcaseConverts strings between different text case…
permissive · top 15,000 on PyPI
camel-converterConverts strings and dictionary keys between…
permissive · top 5,000 on PyPI
boa-strConverts strings to snake_case by normalizing…
permissive · top 5,000 on PyPI
humpsConverts strings to camelCase format, handling…
copyleft · top 15,000 on PyPI