Skip to content

Lightweight, fully typed TypeScript utility for HTTP status codes, with enums, categorized utilities, and helper functions to improve developer experience.

License

Notifications You must be signed in to change notification settings

dev-rashedin/http-status-toolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

74 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

http-status-toolkit

npm version typescript license downloads bundle size

๐Ÿ‘‰ View on npm

A simple and lightweight toolkit for HTTP status codes and messages โ€” written in TypeScript for safe, reliable usage.

If you like the project, please give the project a GitHub โญ


What is this?

This package gives you:

  • HTTP status codes as constants (like StatusCodes.OK for 200)
  • Short and clear messages for each status code
  • Longer, more detailed messages if you want extra info
  • Localization support for 10+ languages
  • A helper function (getStatusMessage) to fetch messages by status code
  • Full TypeScript support for better coding experience

๐Ÿš€ Installation Guide

You can install http-status-toolkit using your favorite package manager.

Using npm

npm install http-status-toolkit

Using yarn

yarn add http-status-toolkit

Using pnpm

pnpm add http-status-toolkit

TypeScript & Module Support

  • โœ… Full TypeScript support with type safety and autocompletion
  • โœ… Works in both ESM and CommonJS environments

How to use

import {
  StatusCodes,
  getStatusMessage,
} from 'http-status-toolkit';

// Get the status code number
console.log(StatusCodes.OK); // 200

// Get a short message (default)
console.log(getStatusMessage(StatusCodes.NOT_FOUND));
// Output: "Not Found"

// Get a detailed message (import detailed messages and pass variant)
import DetailedMessages from 'http-status-toolkit/messages-detailed';
console.log(getStatusMessage(StatusCodes.NOT_FOUND, { variant: DetailedMessages }));
// Output: "Not Found: The requested resource could not be found but may be available in the future."

// Get a localized message (import a language variant)
import BengaliMessages from 'http-status-toolkit/messages-bn';
console.log(getStatusMessage(StatusCodes.NOT_FOUND, { variant: BengaliMessages }));
// Output: (Not Found message in Bengali)

Whatโ€™s included?

  • StatusCodes: constants for all HTTP status codes
  • StatusMessages: short messages for each code (English default)
  • DetailedStatusMessages: longer, more detailed English messages
  • getStatusMessage(code, options?): returns the message for a status code; optionally pass a { variant } to get localized or detailed messages

Note:
getStatusMessage returns the HTTP reason phrase for a status code.
You can also use the alias getReasonPhrase, which behaves the same way.


Common HTTP Status Codes

Code Constant Message
200 OK Request OK
201 CREATED Resource created
400 BAD_REQUEST Bad input
401 UNAUTHORIZED Auth required
403 FORBIDDEN Access denied
404 NOT_FOUND Not found
500 SERVER_ERROR Server crashed

๐Ÿ”— See full list of status codes
๐Ÿ”— See status codes with detailed messages


Supported Languages (Localization)

You can import message variants for different languages:

Language Import Path Docs File
English (default) โ€” โ€”
Detailed English messages-detailed detailed-status-messages.md
Bengali messages-bn bengali-status-messages.md
Chinese messages-zh chinese-status-messages.md
Hindi messages-hi hindi-status-messages.md
Arabic messages-ar arabic-status-messages.md
German messages-de german-status-messages.md
French messages-fr french-status-messages.md
Italian messages-it italian-status-messages.md
Spanish messages-es spanish-status-messages.md
Japanese messages-ja japanese-status-messages.md
Russian messages-ru russian-status-messages.md

Contributors

Thanks to everyone who has contributed to this project! Special thanks to:

  • Rocky Haque โ€” for their valuable pull request(s)

Contributions of any kind are always welcome. Feel free to open issues or submit PRs!


License

MIT License. See the LICENSE file.


Contributions

Feel free to suggest improvements or add new status codes by opening issues or pull requests on GitHub.


Links


Made with โค๏ธ by Rashedin Islam

About

Lightweight, fully typed TypeScript utility for HTTP status codes, with enums, categorized utilities, and helper functions to improve developer experience.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •