A cross-runtime package providing HTTP status code constants with reason phrases and utility functions.
statusx is a comprehensive JavaScript/TypeScript package that enumerates all
HTTP status codes defined in:
- RFC 1945 (HTTP/1.0)
- RFC 2616 (HTTP/1.1)
- RFC 2518 (WebDAV)
The package exports:
StatusCodesenum - Numeric HTTP status codesReasonPhrasesenum - Human-readable reason phrases- Utility functions for parsing and validating status codes
With Deno
deno add jsr:@binarybrains/statusxWith Bun
bunx jsr add @binarybrains/statusxWith NPM
npx jsr add @binarybrains/statusximport { StatusCodes } from '@binarybrains/statusx';
function handleResponse(status: number) {
if (status === StatusCodes.OK) {
console.log('Success!');
} else if (status === StatusCodes.NotFound) {
console.log('Resource not found');
}
}import { ReasonPhrases } from '@binarybrains/statusx';
const message = ReasonPhrases.Unauthorized;
// "Unauthorized"import {
getReasonPhrase,
parseStatusCode,
StatusCodes,
} from '@binarybrains/statusx';
// Get reason phrase from status code
getReasonPhrase(200); // "OK"
getReasonPhrase('404'); // "Not Found"
getReasonPhrase(StatusCodes.BadRequest); // "Bad Request"
// Get status code from reason phrase (case-insensitive)
parseStatusCode('OK'); // 200
parseStatusCode('not found'); // 404
parseStatusCode('Internal Server Error'); // 500import { isValidReasonPhrase, isValidStatusCode } from '@binarybrains/statusx';
isValidStatusCode(200); // true
isValidStatusCode('404'); // true
isValidStatusCode(999); // false
isValidReasonPhrase('OK'); // true
isValidReasonPhrase('not found'); // true
isValidReasonPhrase('Invalid'); // falseimport {
isClientError,
isInformational,
isRedirect,
isServerError,
isSuccess,
} from '@binarybrains/statusx';
isInformational(100); // true (Continue)
isSuccess(200); // true (OK)
isRedirect(301); // true (Moved Permanently)
isClientError(404); // true (Not Found)
isServerError(500); // true (Internal Server Error)- TypeScript Support - Full TypeScript definitions with JSDoc comments
- Cross-Runtime - Works with Deno, Bun, Node.js, and browsers
- Comprehensive Coverage - All standard HTTP status codes from HTTP/1.0, HTTP/1.1, and WebDAV
- Utility Functions - Parse, validate, and classify status codes
- No Dependencies - Lightweight with zero external dependencies
| RFC | Description | Status Codes |
|---|---|---|
| RFC 1945 | HTTP/1.0 | Core status codes |
| RFC 2616 | HTTP/1.1 | Extended status codes |
| RFC 2518 | WebDAV | WebDAV-specific codes |
| RFC 6585 | Additional HTTP Status Codes | 4xx/5xx extensions |
| RFC 8297 | 103 Early Hints | 103 informational |
| Category | Range | Description |
|---|---|---|
| Informational | 100-199 | Request received, continuing |
| Success | 200-299 | Request successfully received and accepted |
| Redirection | 300-399 | Further action must be taken |
| Client Error | 400-499 | Request has bad syntax or cannot be fulfilled |
| Server Error | 500-599 | Server failed to fulfill valid request |
MIT
Created by @EGAMAGZ