stringr
Comprehensive string manipulation plugin for dart. Handles operations on latin, non latin and grapheme clusters alike! Features inspured from VocaJs
1.2.2
33K downloads/mo
#1801 most downloaded on pub.dev
Chinmay-KB/stringr
What this package is like to depend on
Last release 5 months ago
23 Mar 2026
Release timing varies
gaps range from 3 months to 3.8 years
Nearly every release is documented
notes for 5 of 5 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
7 releases · first in 2021
4 releases in the last 12 months
see the full history below
Release timeline
7 releases · Jan 2021 to Mar 2026Releases
latest 7-
1.2.223 Mar 2026Release notes
Open source →Bug Fixes
- Fixed
capitalize()to normalize already-capitalized and all-uppercase inputs likeHELLOandHeLLotoHello - Preserved acronym tokens in
camelCase()while fixingcapitalize()behavior
Tests
- Added regression coverage for uppercase and mixed-case
capitalize()inputs
- Fixed
-
1.2.119 Dec 2025Release notes
Open source →Documentation
- Revamped README with cleaner structure and API tables
- Added CONTRIBUTING.md for contributors
- Removed codemagic badge
Code Quality
- Code formatting improvements across source files
-
1.2.019 Dec 2025Release notes
Open source →New Features
- Added
unescapeHtml()method to unescape HTML entities - Added
escapeHtml()as the new camelCase version ofescapeHTML() - Added
countOccurrences()with correct spelling - Added convenience getters:
toCamelCase,toSnakeCase,toKebabCase,toTitleCase,toPascalCase
Bug Fixes
- Fixed malformed regex patterns in
const_regex.dart(JS-style delimiters removed) - Fixed performance bug in
latinize()- maps are now lazily initialized instead of rebuilt on every call - Fixed
prune()to handle tabs and other whitespace, not just spaces - Fixed nullable return types in
words(),chars(),codePoints(),graphemes()
Deprecations (will be removed in 2.0.0)
escapeHTML()- useescapeHtml()insteadunEscapeRegExp()- useunescapeRegExp()insteadcountOccurences()- usecountOccurrences()instead (typo fix)count()- use.lengthinsteadchars()- use.split('')insteadcodePoints()- use.codeUnitsinsteadcharAt()- usestring[index]insteadlowerCase()- use.toLowerCase()insteadupperCase()- use.toUpperCase()instead
Code Quality
- Optimized
swapCase()usingStringBufferfor O(n) performance - Made escape character maps
constfor compile-time optimization - Added modern Dart 3.0+ switch expressions in case methods
- Improved code documentation
- Added
-
1.1.018 Dec 2025Release notes
Open source →- Updated to Dart 3.0+ with modern SDK constraints (>=3.0.0 <4.0.0)
- Added
unescapeRegExp()method to unescape regex strings - Code refactoring and improved maintainability
- Updated dependencies to latest compatible versions
-
1.0.019 Mar 2022Release notes
Open source →- First stable release
- All string manipulation features from prerelease now stable
-
0.0.2-prerelease04 Jan 2021 pre-releaseNothing published for this version
-
0.0.1-prerelease04 Jan 2021 pre-releaseNothing published for this version