awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
gvergnaud avatar

gvergnaud/hotscript

0
View on GitHub↗
3,669 stars·60 forks·TypeScript·MIT·7 views

Hotscript

Hotscript is a comprehensive suite of composable utilities designed for performing structural transformations and mathematical operations within the TypeScript type system. It serves as a type-level manipulation library that provides a set of higher-order functions to map, filter, and reduce the structure of type definitions.

The project focuses on type-level programming by implementing reusable logic and calculations directly within types. This includes the ability to create custom type functions, implement type-level pattern matching, and compose sequences of transformations where each operation uses the previous result as input.

The toolkit covers several core capability areas, including type-level arithmetic for numeric literals and the programatic modification of object structures. It also provides tools for string literal parsing and the manipulation of tuple elements through operations such as zipping, flattening, and slicing.

Features

  • Type Transformations - Provides a comprehensive functional toolset for performing intricate structural transformations on complex TypeScript types.
  • Recursive Object Type Transformers - Allows programmatically modifying deeply nested object structures by renaming keys or changing property types recursively.
  • String Literal Type Manipulations - Splits and modifies string literal types to extract specific segments of text for use in type definitions.
  • Type-Level Arithmetic - Calculates sums, differences, products, and quotients using number literal types and recursive tuple length logic.
  • Type-Level Programming Utilities - Implements reusable logic and calculations directly within the type system to automate the generation and validation of types.
  • Type Transformation Pipelines - Implements a pipeline for composing multiple type transformations where the output of one utility becomes the input for another.
  • Arithmetic Operations - Simulates basic mathematical calculations by recursively counting or subtracting elements from tuple lengths at the type level.
  • Custom Type Functions - Provides a mechanism for creating reusable, composable type-level logic blocks and functions.
  • Transformation Pipelines - Enables the composition of type transformations into pipelines where results flow sequentially through multiple functions.
  • Mapped Type Transformations - Provides utilities to programmatically alter object property modifiers and value types by iterating over keys using mapped types.
  • Recursive Mapped Types - Uses nested conditional types to iteratively process and transform complex, nested type structures until a base case is reached.
  • Template Literal Parsing - Deconstructs and recomposes string literal types using template strings to perform complex text-based transformations at compile time.
  • Generic Manipulation Toolsets - Ships a set of higher-order functions for mapping, filtering, and reducing the structure of TypeScript type definitions.
  • Type Transformation Libraries - Provides a library of composable functions for transforming and manipulating complex TypeScript types at the type level.
  • Variadic Tuple Manipulation - Employs spread operators and indexed access types to filter, slice, and modify elements within tuple types.
  • Object Type Transformations - Changes object structures by removing keys, assigning new values, or renaming keys to different cases at the type level.
  • Element Mapping and Filtering - Implements tools to change every item in a tuple or remove specific elements using a filtering predicate.
  • Metadata Extraction - Implements utilities to extract return types and parameter lists from function definitions for further transformation.
  • Type-Level Pattern Matching - Implements a utility to evaluate types against predefined patterns to determine the resulting type.

Star history

Star history chart for gvergnaud/hotscriptStar history chart for gvergnaud/hotscript

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Hotscript

Similar open-source projects, ranked by how many features they share with Hotscript.
  • ts-essentials/ts-essentialsts-essentials avatar

    ts-essentials/ts-essentials

    4,068View on GitHub↗

    ts-essentials is a comprehensive toolkit of utility types and libraries for TypeScript, providing advanced primitives for recursive structural transformations, runtime assertions, and type guards. It serves as a utility library for performing complex type-level programming to ensure stronger type safety and reduce boilerplate. The project distinguishes itself through a specialized set of tools for deep object manipulation, such as recursively applying read-only or optional modifiers across nested hierarchies. It also provides a dedicated set of strict type constraints to ensure data structure

    TypeScriptessentialstoolboxtype-level-programming
    View on GitHub↗4,068
  • millsp/ts-toolbeltmillsp avatar

    millsp/ts-toolbelt

    7,145View on GitHub↗

    ts-toolbelt is a collection of specialized utilities for manipulating and validating TypeScript types. It provides a toolkit for performing complex transformations on objects, unions, and functions to enforce strict data consistency at compile time. The library features dedicated transformers for function types, including utilities for currying, composition, and signature extraction. It also includes an object type manipulator for deep merging, patching, and reshaping complex structures. The capability surface extends to literal string processing, type-level arithmetic, and tuple operations.

    TypeScriptdynamic-typessafetytype-checking
    View on GitHub↗7,145
  • sindresorhus/type-festsindresorhus avatar

    sindresorhus/type-fest

    17,233View on GitHub↗

    type-fest is a library of reusable utility types for performing complex transformations and validations on objects, arrays, strings, and numeric ranges in TypeScript. It provides a collection of type definitions designed to handle advanced structural changes and constraints. The project distinguishes itself by offering specialized logic for string literal processing, such as casing transformations and pattern-based modifications, and type-level arithmetic for calculating numeric ranges and absolute values. It also includes utilities for enforcing deep immutability, ensuring union mutual exclu

    TypeScriptnpm-packagetypestypescript
    View on GitHub↗17,233
  • piotrwitek/utility-typespiotrwitek avatar

    piotrwitek/utility-types

    5,759View on GitHub↗

    This is a TypeScript utility type library providing advanced type aliases and mapped types for complex object and union transformations. It implements specialized tools for creating branded nominal types, extracting type metadata, and performing set operations on union types. The project distinguishes itself through a toolkit for recursive object transformations, allowing for the application of property constraints like read-only or optional status across deeply nested structures. It also provides a system for computing intersections, differences, and complements between union types to simula

    TypeScriptmapped-typesstatic-typingtypescript
    View on GitHub↗5,759
See all 30 alternatives to Hotscript→

Frequently asked questions

What does gvergnaud/hotscript do?

Hotscript is a comprehensive suite of composable utilities designed for performing structural transformations and mathematical operations within the TypeScript type system. It serves as a type-level manipulation library that provides a set of higher-order functions to map, filter, and reduce the structure of type definitions.

What are the main features of gvergnaud/hotscript?

The main features of gvergnaud/hotscript are: Type Transformations, Recursive Object Type Transformers, String Literal Type Manipulations, Type-Level Arithmetic, Type-Level Programming Utilities, Type Transformation Pipelines, Arithmetic Operations, Custom Type Functions.

What are some open-source alternatives to gvergnaud/hotscript?

Open-source alternatives to gvergnaud/hotscript include: ts-essentials/ts-essentials — ts-essentials is a comprehensive toolkit of utility types and libraries for TypeScript, providing advanced primitives… millsp/ts-toolbelt — ts-toolbelt is a collection of specialized utilities for manipulating and validating TypeScript types. It provides a… sindresorhus/type-fest — type-fest is a library of reusable utility types for performing complex transformations and validations on objects,… microsoft/typescript-handbook — This project is a comprehensive guide and educational resource for the TypeScript language. It covers the fundamental… piotrwitek/utility-types — This is a TypeScript utility type library providing advanced type aliases and mapped types for complex object and… type-challenges/type-challenges — Type-challenges is a community-driven learning platform and programming playground designed to help developers master…