TypeScript Utilities

Open-source TypeScript projects categorized as Utilities Edit details

Top 23 TypeScript Utility Projects

  • hyperterm

    A terminal built on web technologies

    Project mention: Alternative for terminal in Mac | reddit.com/r/bioinformatics | 2022-06-25

    Hyper is neat.

  • date-fns

    ⏳ Modern JavaScript date utility library ⌛️

    Project mention: Why Your Angular Bundle Is Bloated | dev.to | 2022-06-29

    Depending on how much time I want to spend implementing all my requirements from scratch, I might avoid using any library. But if I want to spend less time reinventing the wheel, I'll reach for a well-known libraries such as date-fns that are tree-shakable. One thing is certain, I'll avoid libraries like MomentJS since they result in an unnecessary increase in bundle size.

  • Appwrite

    Appwrite - The Open Source Firebase alternative introduces iOS support . Appwrite is an open source backend server that helps you build native iOS applications much faster with realtime APIs for authentication, databases, files storage, cloud functions and much more!

  • type-fest

    A collection of essential TypeScript types

    Project mention: Extreme Explorations of TypeScript's Type System | news.ycombinator.com | 2022-06-27

    > TypeScript's type annotations are really a DSL embedded into JavaScript. And they can, and, depending on the problem at hand, should be treated as such.

    I think this is the key. If treated as you describe, meaning the advanced types are well-written, well-documented, and well unit-tested as if they are "true" code, then using them shouldn't be too much of an issue.

    However, I think people often just assume that the types aren't "real" code and thus the normal concepts of good software engineering don't apply and type monstrosities which nobody can understand result.

    Imagine if this code[0] wasn't well documented, fairly clearly written, and also tested. It would definitely be a liability in a codebase.

    In addition, the rules of how advanced TypeScript concepts work can be quite nuanced and not always extremely well defined, so you can end up in situations where nobody even _really_ understands why some crazy type works.

    [0]: https://github.com/sindresorhus/type-fest/blob/2f418dbbb6182...

  • utility-types

    Collection of utility types, complementing TypeScript built-in mapped types and aliases (think "lodash" for static types).

    Project mention: Function requires ommited type but accepts full type | reddit.com/r/typescript | 2021-08-06

    I am guessing that since it does not exists as an built in type, in utility-types, or in ts-toolbelt that it currently isn't possible.

  • reactfire

    Hooks, Context Providers, and Components that make it easy to interact with Firebase.

    Project mention: Convex vs. Firebase | news.ycombinator.com | 2022-06-21

    I was an early developer at Firebase. I think we made Firebase so easy to use and never spoke on about the technicals that the whole software ecosystem now underestimates the complexity involved. I see various Firebase competitors asserting various "mistakes it makes" without really understanding what it delivers, which is understandable because we never marketed it like that because we spoke only about how it can help you build easier.

    The idea that n queries instead of a join is slow is not as true as you would think. Firestore supports streaming and pipelines at its core, and can reuse cache across operations. At the end of the day, the data goes over a narrow network channel. If you can saturate the channel, and don't leave any gaps, what's the performance difference if the data comes from a single query or many that are back-to-back. The data is transferred to the client either way. Both Firebase databases are pipelined, so this "many round trip" argument is not a decent argument if the client can issue the queries without waiting for responses (such as the code in this article).

    The other is consistency levels and correctness. I constantly see devs call Firebase an eventually consistent database which is wrong, its causally consistent [1], and this makes a huge difference when trying to do OLTP. The offline capabilities are built on the consistency primitives, and it's the only way it can work. So while this convex article is banging on about "End-to-End Correctness Philosophy", they miss the most important quality of correctness, and if they are not careful, will miss the required engineering, and then be unable to deliver an offline cache over real-time streams. I see this playing out with Supabase, I warned them personally before they got into YCombinator that what they were building was not causally consistent. Since then, they have had to rearchitect their real-time features after shipping them. (I have not reviewed their latest design yet so I have no idea whether they have it right yet).

    Many things sucked about Firebase. The bespoke security rules and the lack of views. So Convex is on the money shipping functions on the backend. I think Supabase is shipping competitors' mistakes with row-level security language. Personally, I think Firebase's mistakes can be fixed with the addition of an open-source Firebase server [1], as the clients are already open source and the mistakes are all to do with just the server. The real tech was always in the clients anyway (offline cache, connection management, operation queues).

    It will be interesting to see if building expressly for React is a good idea. Firebase shipped many adapters, like https://github.com/FirebaseExtended/reactfire, using the "thin-waist" principle of not over-fitting. But Javascript technology moved from callbacks to async while Firebase was in the field, so the current API is not now idiomatic. But convex is setting itself for even more ecosystem fragility, what if React changes API or falls out of favor? This is a big risk! I hope they can roll with whatever happens!

    [1] https://observablehq.com/@tomlarkworthy/redis-backend-1

  • qrcode.react

    A <QRCode/> component for use with React.

    Project mention: Encode Google Calendar Invites in a QR Code in NextJS | dev.to | 2022-06-16

    qrcode.react is a React component used to generate QR (Quick Response) codes that render in the DOM for React applications. The generated QR codes are suited for printing and on-screen scanning.

  • react-unity-webgl

    React Unity WebGL provides a modern solution for embedding Unity WebGL builds in your React Application while providing advanced APIs for two way communication and interaction between Unity and React.

    Project mention: React unity WebGL not working on React JS project | reddit.com/r/reactjs | 2022-01-05

    Hey there trying to make my Unity WebGL export work on my React JS project but for some reason is not working I'm using the following React Unity WebGL version ([email protected] # For Unity 2018 and 2019 (Active LTS)) and I have followed the instructions accordingly to the version I'm using, someone ran into the same issue than me and asked a question in the GitHub and I followed what they said which is basically to put the unity folder in the public folder but still is not working. Anyone has any idea of how to fix this ?

  • JetBrains

    Developer Ecosystem Survey 2022. Take part in the Developer Ecosystem Survey 2022 by JetBrains and get a chance to win a Macbook, a Nvidia graphics card, or other prizes. We’ll create an infographic full of stats, and you’ll get personalized results so you can compare yourself with other developers.

  • react-fetching-library

    Simple and powerful API client for react 👍 Use hooks or FACCs to fetch data in easy way. No dependencies! Just react under the hood.

  • nest-router

    Router Module For Nestjs Framework 🚦 🚀

    Project mention: Advanced Practices for Nest.js + Next.js Projects | dev.to | 2022-01-07

    To prepend basePath to every nest.js server endpoint you may employ something like nest-router and use basePath as path parameter.

  • EVT

    💧EventEmitter's typesafe replacement

  • pratica

    🥃 Functional Algebraic Data Types

    Project mention: Mimic Rust's Result type in 7 lines of TypeScript | reddit.com/r/javascript | 2022-02-15

    I would highly recommend the library Practica for anyone interested in having similar types, and many utility functions for those types.

  • react-children-utilities

    Extended utils for ⚛️ React.Children data structure that adds recursive filter, map and more methods to iterate nested children.

    Project mention: Frontend search with nextjs | reddit.com/r/nextjs | 2021-08-09

    I need to make a search engine that searches on pages without making requests to the server. My idea is to export text from pages with Children.onlyText to a single JSON file on build time (on every refresh when in development mode), then cache and read this file from javascript.

  • common

    Utilities and base libraries for use across polkadot-js for Polkadot and Substrate. Includes base libraries, crypto helpers and cross-environment helpers. Full documentation & examples available. (by polkadot-js)

  • cz-git

    cz-git | czg 🔨 A more engineered, lightweight, customizable, standard output format commitizen adapter and CLI

    Project mention: cz-git, A lazy man's commitizen adapter. | dev.to | 2022-03-08

    guide | website: http://cz-git.qbenben.com/

  • meta-fetcher 🔎

    simple metadata scrapper for node.js

  • node-object-hash

    Node.js object hash library with properties/arrays sorting to provide constant hashes. It also provides a method that returns sorted object strings that can be used for object comparison without hashes.

  • type-predicates

    A comprehensive collection of type-guards, type assertions and related utils

    Project mention: Type Predicate and Assertion Functions | reddit.com/r/javascript | 2021-08-09
  • antiutils

    TypeScript/JavaScript utilities for those who don't like utilities

  • react-screen-wake-lock

    🌓 React implementation of the Screen Wake Lock API. It provides a way to prevent devices from dimming or locking the screen when an application needs to keep running

  • Vital-Utilities

    Modern Windows Task Manager alternative with bells and whistles

    Project mention: What’s everyone working on this week (8/2022)? | reddit.com/r/rust | 2022-02-21
  • map-fns

    Easily manipulate key-value stores in the browser and Node.js.

    Project mention: map-fns: Easily manipulate key-value stores in the browser and Node.js | reddit.com/r/typescript | 2022-01-15
  • @Sugoi\core

    SugoiJS core module - Core features of SugoiJS (by sugoiJS)

  • discord.js-Collector-Utils

    Npm package - Collector utilities for discord.js.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-06-29.

TypeScript Utilities related posts


What are some of the best open-source Utility projects in TypeScript? This list will help you:

Project Stars
1 hyperterm 38,706
2 date-fns 29,082
3 type-fest 7,954
4 utility-types 4,295
5 reactfire 3,051
6 qrcode.react 2,933
7 react-unity-webgl 1,015
8 react-fetching-library 611
9 nest-router 519
10 EVT 364
11 pratica 302
12 react-children-utilities 259
13 common 221
14 cz-git 218
15 meta-fetcher 🔎 134
16 node-object-hash 69
17 type-predicates 43
18 antiutils 31
19 react-screen-wake-lock 29
20 Vital-Utilities 14
21 map-fns 9
22 @Sugoi\core 7
23 discord.js-Collector-Utils 6
Find remote jobs at our new job board 99remotejobs.com. There are 3 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.