tsafe
eslint-plugin-total-functions
Our great sponsors
tsafe | eslint-plugin-total-functions | |
---|---|---|
11 | 1 | |
384 | 86 | |
- | - | |
6.7 | 8.7 | |
3 months ago | 5 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:
eslint-plugin-total-functions
-
The Complete Guide to Immutability in TypeScript
There’s also eslint-plugin-total-functions, which includes the rule total-functions/no-unsafe-readonly-mutable-assignment which warns when a readonly type is assigned to or passed as an argument to a function taking a mutable type.
What are some alternatives?
type-fest - A collection of essential TypeScript types
eslint-plugin-functional - ESLint rules to disable mutation and promote fp in JavaScript and TypeScript.
tss-react - ✨ Dynamic CSS-in-TS solution, based on Emotion
typescript-eslint-demo - typescript eslint playground
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
typescript-eslint - :sparkles: Monorepo for all the tooling which enables ESLint to support TypeScript
clean-architecture - 📐 A clean architecture framework
gitlanding - ✒️ React components for creating landingpages
eslint-plugin-jest - ESLint plugin for Jest
starter-workflows - Accelerating new GitHub Actions workflows
denoify - 🦕For NPM module authors that would like to support Deno but do not want to write and maintain a port.