tsafe
ts-pattern
Our great sponsors
tsafe | ts-pattern | |
---|---|---|
11 | 38 | |
384 | 10,832 | |
- | - | |
6.7 | 8.5 | |
3 months ago | 11 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.
tsafe
-
Ensure you never forget a case in a switch
Hello, This is a use case for tsafe, a utility that let you make assertions on types.
- tsafe enables to unit test your types.
-
Ensure a Zod validator actually valid given type.
Zod is a solution for generating validators. I used to be reluctant to use it because I like to declare my types with the TypeScript syntax. I am not satisfied by getting the type inferred from the validator. The solution I found is to use tsafe, a utility that enables to make sure that two types are equals. With this solution you'll have to declare your type twice, once with the TypeScript syntax and once when declaring your zod parser but you are garentied that if you update your type and forget to update the corresponding zod parser your app won't build.
-
GitLanding: A beautiful landing page for your Github project in a matter of minutes.
tsafe.dev
-
How to Troubleshoot Types?
Hi, Checkout tsafe. It enables to test types definition. Checkout this GIF in particular. Let's say for example that we have an objectFromEntries function and we want to test it typewise, we can do: ```typescript import { objectEntries } from "../myObjectFromEntries"; import { assert } from "tsafe";
-
Object.fromEntries() with a return type more precise than just { [k: sting]: any; } 🥳
`Object.fromEntries()`, `Object.entries()` and `Object.keys()` are barely usable when in a TypeScript codebase because their return type are very vague. [tsafe](https://github.com/garronej/tsafe) features three new utilities: [objectFromEntries()](https://docs.tsafe.dev/objectfromentries), [objectEntries()](https://docs.tsafe.dev/objectentries) and [objectKeys()](https://docs.tsafe.dev/objectkeys), functionally equivalent to their built-in counterpart but featuring much better return types.
- tsafe: The missing TypeScript builtins
- tsafe: A powerful TypeScript assertion function
-
tsafe: A new assertion function for TypeScript
Three GIFs to convince you that you need tsafe in your life:
ts-pattern
-
You Don't Need React
ts-pattern has been a decent band-aid for the lack of native pattern matching, but obviously has downsides that could be avoided if it was built into the language.
https://github.com/gvergnaud/ts-pattern
- Stop nesting ternaries
-
Building React Components Using Unions in TypeScript
ts-pattern
- Pattern Matching Library for TypeScript
-
TypeScript Is Surprisingly OK for Compilers
With how powerful the type system is you can implement pattern matching via a library pretty convincingly, https://github.com/gvergnaud/ts-pattern is definitely the go-to. That being said pattern matching is hardly a requirement for being ok for implementing compilers.
-
How to achieve type safety here possible without "type hacks"?
https://github.com/gvergnaud/ts-pattern might help
- ts-pattern v5
-
[AskJS] C# in every Node.js job posting?
There's a proposal to add something like that to JavaScript but it's been stuck in limbo since 2017 although there are libraries like ts-pattern which implement it already.
- Simplifying Dynamic Classes in Vue with the class-variance-authority library | cdruc.com
- Rust Appreciation Thread
What are some alternatives?
type-fest - A collection of essential TypeScript types
pattern-grab - 🤛🏻 Regular Expression Data Grabber
tss-react - ✨ Dynamic CSS-in-TS solution, based on Emotion
ts-adt - Generate Algebraic Data Types and pattern matchers
eslint-plugin-total-functions - An ESLint plugin to enforce the use of total functions (and prevent the use of partial functions) in TypeScript.
await-to-js - Async await wrapper for easy error handling without try-catch
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
union-types - A Typescript library for creating discriminating union types.
clean-architecture - 📐 A clean architecture framework
ts-option
gitlanding - ✒️ React components for creating landingpages
typescript-coverage-report - Node command tool to generate TypeScript coverage report