Returns `true` if text is lower case only
npm install text-is-lower-case[![NPM version][npm-image]][npm-url]
[![NPM downloads][downloads-image]][downloads-url]
[![Bundle size][bundlephobia-image]][bundlephobia-url]


> Check if a string is in lowercase format.
- Lightweight - Only ~200B minified + gzipped
- Type-safe - Full TypeScript support with comprehensive type definitions
- Zero dependencies - No external dependencies
- Tree-shakeable - ES modules support
- Universal - Works in browsers, Node.js, and serverless environments
- Well-tested - Comprehensive test suite with edge cases
``bashnpm
npm install text-is-lower-case
๐ฏ Quick Start
`javascript
import { isLowerCase } from "text-is-lower-case";console.log(isLowerCase("hello world")); // true
console.log(isLowerCase("Hello World")); // false
console.log(isLowerCase("HELLO WORLD")); // false
`๐ Usage
$3
`javascript
import { isLowerCase } from "text-is-lower-case";console.log(isLowerCase("hello")); // true
`$3
`javascript
const { isLowerCase } = require("text-is-lower-case");console.log(isLowerCase("hello")); // true
`$3
`typescript
import { isLowerCase } from "text-is-lower-case";const result: boolean = isLowerCase("hello world");
console.log(result); // true
`๐ Validation Examples
$3
`javascript
import { isLowerCase } from "text-is-lower-case";// Valid lowercase
isLowerCase("hello"); // true
isLowerCase("hello world"); // true
isLowerCase("test123"); // true
isLowerCase("user_name"); // true
isLowerCase("api-key"); // true
// Invalid (not lowercase)
isLowerCase("Hello"); // false
isLowerCase("HELLO"); // false
isLowerCase("Hello World"); // false
isLowerCase("camelCase"); // false
isLowerCase("PascalCase"); // false
`$3
`javascript
import { isLowerCase } from "text-is-lower-case";// Numbers and symbols
isLowerCase("123"); // true
isLowerCase("hello123"); // true
isLowerCase("test@email.com"); // true
isLowerCase("user_123"); // true
// Empty and whitespace
isLowerCase(""); // true
isLowerCase(" "); // true
isLowerCase("\n\t"); // true
// Special characters
isLowerCase("hello-world"); // true
isLowerCase("test_case"); // true
isLowerCase("file.txt"); // true
`๐ Real-World Examples
$3
`javascript
import { isLowerCase } from "text-is-lower-case";function validateUsername(username) {
if (!isLowerCase(username)) {
return "Username must be lowercase";
}
return null;
}
console.log(validateUsername("john_doe")); // null (valid)
console.log(validateUsername("John_Doe")); // "Username must be lowercase"
`$3
`javascript
import { isLowerCase } from "text-is-lower-case";function validateEmailFormat(email) {
const [localPart] = email.split("@");
if (!isLowerCase(localPart)) {
return "Email local part should be lowercase";
}
return null;
}
console.log(validateEmailFormat("user@example.com")); // null
console.log(validateEmailFormat("User@example.com")); // "Email local part should be lowercase"
`$3
`javascript
import { isLowerCase } from "text-is-lower-case";function validateSlug(slug) {
if (!isLowerCase(slug)) {
return "URL slug must be lowercase";
}
return null;
}
console.log(validateSlug("my-blog-post")); // null
console.log(validateSlug("My-Blog-Post")); // "URL slug must be lowercase"
`$3
`javascript
import { isLowerCase } from "text-is-lower-case";function validateConfigKeys(config) {
const invalidKeys = Object.keys(config).filter((key) => !isLowerCase(key));
if (invalidKeys.length > 0) {
return
Invalid config keys (must be lowercase): ${invalidKeys.join(", ")};
}
return null;
}const config1 = { database_url: "...", api_key: "..." };
const config2 = { databaseUrl: "...", apiKey: "..." };
console.log(validateConfigKeys(config1)); // null
console.log(validateConfigKeys(config2)); // "Invalid config keys..."
`๐ API Reference
$3
Checks if a string is in lowercase format.
#### Parameters
-
input (string): The string to check#### Returns
-
boolean: true if the string is lowercase, false otherwise๐ Bundle Size
This package is optimized for minimal bundle size:
- Minified: ~200B
- Gzipped: ~150B
- Tree-shakeable: Yes
- Side effects: None
๐ Browser Support
- Modern browsers: ES2015+ (Chrome 51+, Firefox 54+, Safari 10+)
- Node.js: 12+
- TypeScript: 4.0+
- Bundle formats: UMD, ESM, CommonJS
๐งช Testing
`bash
Run tests
pnpm testRun tests in watch mode
pnpm test --watchRun tests with coverage
pnpm test --coverageType checking
pnpm typecheckLinting
pnpm lint
`๐ Related Packages
text-camel-case - Convert to camelCase
- text-capital-case - Convert to Capital Case
- text-constant-case - Convert to CONSTANT_CASE
- text-dot-case - Convert to dot.case
- text-header-case - Convert to Header-Case
- text-case - All case transformations in one package๐ License
๐ค Contributing
1. Fork the repository
2. Create your feature branch (
git checkout -b feature/amazing-feature)
3. Commit your changes (git commit -m 'Add some amazing feature')
4. Push to the branch (git push origin feature/amazing-feature`)- ๐ง Email: selikhov.dmitrey@gmail.com
- ๐ Issues: GitHub Issues
- ๐ฌ Discussions: GitHub Discussions
- ๐ Documentation: Full Documentation
---
Made with โค๏ธ by Dmitry Selikhov
[npm-image]: https://img.shields.io/npm/v/text-is-lower-case.svg?style=flat
[npm-url]: https://npmjs.org/package/text-is-lower-case
[downloads-image]: https://img.shields.io/npm/dm/text-is-lower-case.svg?style=flat
[downloads-url]: https://npmjs.org/package/text-is-lower-case
[bundlephobia-image]: https://img.shields.io/bundlephobia/minzip/text-is-lower-case.svg
[bundlephobia-url]: https://bundlephobia.com/result?p=text-is-lower-case