neverthrow
ts-results
Our great sponsors
neverthrow | ts-results | |
---|---|---|
16 | 7 | |
2,433 | 1,046 | |
- | - | |
5.3 | 0.0 | |
3 days ago | 3 days ago | |
TypeScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
neverthrow
-
Error Handling Patterns
Very timely, was just trying to understand how to improve error handling with typescript recently and came across neverthrow (https://github.com/supermacro/neverthrow) which looks promising…
-
Ask HN: What is the “proper” way to do error-handling in TypeScript?
On my team we use Rust-style Result/Option types for any unrecoverable exceptions.
-
The gotcha of unhandled promise rejections
I was happy when Promise became available, but in retrospect I'd wish we would have skipped ahead and gotten Observable (e.g: https://rxjs.dev/) instead to enable more powerful functionality and composition etc.
In Typescript dealing with rejection is also painful since rejection reasons can't be guaranteed to be Error even when you always take care of that. And it can't help you guarantee that you're handling all types of errors thrown. For that purpose I'm thinking of using https://github.com/supermacro/neverthrow#readme or https://swan-io.github.io/boxed.
-
How has learning Rust been a benefit to you in other programming areas?
I highly recommend the neverthrow library for bringing Result to Typescript.
-
functional error handling (functions return error) recommendations
I like the Result monad from here: https://github.com/supermacro/neverthrow
-
How to know if a function throws in Typescript?
What do you think of neverthrow?
-
ts-results - a lightweight result wrapper to exhibit success/failure instead of using/throwing exceptions.
I use https://github.com/supermacro/neverthrow for this
-
Handle Javascript errors like in Go
See neverthrow as an example of correctly encoding the failure into the return type of the function.
- Why doesn't typescript have a throws type to annotate functions that can throw an error?
-
what's the recommended way to handle error in TS?
I use Neverthrow. Same idea, concurrent projects...
ts-results
-
Robust Error Handling in TypeScript: A Journey from Naive to Rust-Inspired Solutions
For TypeScript developers, the ts-results library is a great tool to apply Rust's error handling pattern, simplifying the implementation of Rust’s `Result’ type in TypeScript.
-
A better way to handle errors in JavaScript
Nicer way to go about this is `ts-results` which introduces the `Result` type, inspired by rust.
-
Is this TypeScript code weird?
I can't speak to it much myself as I don't have any experience with this pattern but I came across this the other day and your post made me think of it. https://github.com/vultix/ts-results Seems like it may not longer be maintained but might be worth comparing it your implementation. Allegedly the module 'fp-ts' also has this functionality but its another thing I have not looked into much.
-
Handling errors like a pro in TypeScript
https://github.com/vultix/ts-results for the former.
- oxide.ts - my Rust-inspired Option/Result and match library for TypeScript - Version 1.0 Release
-
what's the recommended way to handle error in TS?
I've recently been a fan of the Rust style Result return types. There's a few projects doing this but I've been using ts-results.
-
I created a package that adds Rust-like features to TypeScript
This looks fantastic! I’ve been using the types from ts-results in a project for work and it’s been so nice, but I’ve been getting frustrated by the outdated documentation and lack of responses to PRs that have been opened. I was considering writing one of these libraries myself, but this looks like a perfect replacement!
What are some alternatives?
oxide.ts - Rust's Option<T> and Result<T, E>, implemented for TypeScript.
fp-ts - Functional programming in TypeScript
functional-conditionals - A library for writing if / else if / else in a functional way.
result - A TypeScript result type taking cues from Rust's Result and Haskell's Either types
rust-option - brings Option / Result / match from Rust to Javascript
monads - Option, Result, and Either types for TypeScript - Inspired by Rust 🦀
eslint-plugin-promise - Enforce best practices for JavaScript promises
option-t - A toolkit of Nullable/Option/Result type implementation in ECMAScript. Their APIs are inspired by Rust's `Option<T>` and `Result<T, E>`.
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
throwless - The Result and Option type from Rust ported to TypeScript.