SkillAgentSearch skills...

Mondjs

🐛 Monadic error handling for JavaScript/TypeScript.

Install / Use

/learn @nehu3n/Mondjs
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<div align="center">

🐛 MondJS

Monadic Error Handling for JavaScript/TypeScript

NPM Package

Minzipped size

</div>

👋🏼 About

MondJS is a lightweight JavaScript/TypeScript library that brings monadic error handling, inspired by Rust, to your codebase.

This approach to error handling is more robust and reliable than traditional exception handling, which should be reserved for truly exceptional cases, rather than used as the primary method for managing common errors in general situations.

🚀 Getting Started

Installation 📥

You can install MondJS using your preferred package manager:

npm:

npm install mondjs

yarn:

yarn add mondjs

pnpm:

pnpm add mondjs

Basic examples 🔎

These basic examples show very briefly two of the characteristics of MondJS: Result and Option.

<details> <summary>🎭 Result</summary> <hr />
import { type Result, ok, err } from "mondjs";

function divide(a: number, b: number): Result<number, string> {
  if (a === 0 || b === 0) {
    return err("Divided by 0.");
  }

  return ok(a / b);
}

const result = divide(4, 0).unwrap();
console.log(result);
<hr /> </details> <details> <summary>🔮 Option</summary> <hr />
import { type Option, some, none } from "mondjs";

type User = {
  id: number;
  name: string;
};

const users: User[] = [
  { id: 1, name: "Alice" },
  { id: 2, name: "Bob" },
];

function findUserById(id: number): Option<User> {
  const user = users.find((user) => user.id === id);

  return user ? some(user) : none();
}

const defaultUser: User = { id: 3, name: "Jhon" };
const userOption = findUserById(3).unwrapOr(defaultUser);
console.log(userOption);
<hr /> </details> <br />

For more details and to see all the functionalities of MondJS, please refer to the documentation section.

Documentation 📖

For detailed information on using MondJS, including guides and examples, check out the documentation in the docs folder:

  • 💡 Main page: docs/README.md – Overview and basic explanation.

  • 👀 Examples: docs/examples – Practical examples for various use cases.

Explore these resources to get started with MondJS.

📄 License

The whole project is under the MIT license (see file).

👤 Author

MondJS was created and mainly developed by Nehuén (GitHub here).

<div align="right">
Give a star ⭐ to this repository if you see this 😉.
</div>
View on GitHub
GitHub Stars8
CategoryDevelopment
Updated1y ago
Forks0

Languages

TypeScript

Security Score

70/100

Audited on Nov 3, 2024

No findings