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

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
rescript-lang avatar

rescript-lang/rescript

0
View on GitHub↗
7,396 stars·484 forks·ReScript·20 viewsrescript-lang.org↗

Rescript

ReScript is a statically typed programming language and compiler designed to transform type-safe source code into efficient, human-readable JavaScript. It functions as a transpiler that enforces data consistency and prevents runtime errors through static type analysis for both web and server applications.

The project distinguishes itself as an incremental build system that analyzes dependency graphs to recompile only modified files and their dependents. It includes a JSX compatible compiler for building user interfaces and provides a framework for bridging type-safe code with existing JavaScript libraries through consistent interfaces for functions and types.

Broad capabilities include the generation of TypeScript definitions, dead-code elimination via scoped annotations, and the provision of code intelligence such as autocomplete and jump-to-definition. The system also supports build-time feature flags, asynchronous logic handling, and automated source code formatting.

Features

  • Source-to-JavaScript Transpilers - Translates a robustly typed source language into efficient, human-readable JavaScript by stripping type annotations.
  • Typed JavaScript Alternatives - Provides a robust static type system that compiles to efficient JavaScript to prevent runtime errors.
  • Incremental Build Engines - Utilizes a high-performance engine to recompile only modified components, significantly reducing overall build times.
  • Incremental Build Systems - Tracks dependency graphs to recompile only modified source files, accelerating the development cycle.
  • JavaScript Compilers - Translates a statically typed high-level language into efficient and human-readable JavaScript.
  • JavaScript Interoperability - Bridges the type-safe language with the JavaScript runtime for exchanging data and invoking functions.
  • Type Safety - Prevents runtime errors using a static type system with support for extensible records and type coercion.
  • Statically Typed Languages - Implements a language with a robust static type system to ensure codebase consistency.
  • Statically Typed Compilers - Transforms statically typed source code into efficient, human-readable JavaScript to ensure runtime safety.
  • Dependency Graph Analyzers - Analyzes source dependencies to determine which files and their dependents require recompilation during the build process.
  • Interoperability Layers - Provides a consistent interface to expose type-safe functions and types to external JavaScript scripts.
  • Static Analysis - Enforces data consistency and prevents bugs through a compiler that analyzes code structures before execution.
  • JavaScript Interop - Provides a framework for bridging type-safe code with JavaScript libraries using consistent interfaces.
  • Code Intelligence - Provides contextual code suggestions, navigation, and autocomplete through analysis of compiled metadata files.
  • Dead Code Elimination - Implements static analysis using scoped annotations to identify and remove unused code from the final JavaScript bundle.
  • Watch Modes - Monitors files for changes to trigger incremental rebuilds of the JavaScript output.
  • Language Servers - Implements a language server that uses compiled binary metadata to provide fast autocomplete and jump-to-definition features.
  • Build-Time Feature Toggles - Provides compile-time parameters to conditionally include or exclude specific source files and dependencies based on configuration flags.
  • Type Definition Generators - Automatically synthesizes static TypeScript definition files from source code to ensure type safety across modules.
  • Functional Frontend Development - Enables building web user interfaces using a functional paradigm that compiles to JavaScript.
  • JSX Compilers - Transforms JSX syntax extensions into standard JavaScript function calls for building user interfaces.
  • JSX Transformers - Transforms JSX syntax tree nodes into executable JavaScript function calls during the build process.
  • Integration - A robustly typed language that compiles to efficient and human-readable JavaScript
  • Integrations - Typed language that compiles to efficient JavaScript.
  • Renderers and Integration - Typed language that compiles to efficient JavaScript.

Star history

Star history chart for rescript-lang/rescriptStar history chart for rescript-lang/rescript

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

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

Projects sharing features with Rescript

These projects share indexed features with Rescript. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • elm/compilerelm avatar

    elm/compiler

    7,794View on GitHub↗

    This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed language into optimized JavaScript for web browsers. It serves as a frontend architecture framework, providing a static type system and a package manager that enforces semantic versioning. The compiler uses a type-checking engine with automatic type inference to prevent runtime errors and guide code refactoring. It implements a structural pattern for managing application state and rendering user interfaces through a virtual DOM, utilizing immutable data and purity-based state transit

    Haskellcompilerelm
    View on GitHub↗7,794
  • scala-js/scala-jsscala-js avatar

    scala-js/scala-js

    4,701View on GitHub↗

    Scala.js is a compiler and cross-platform language toolchain that transforms Scala source code into JavaScript or WebAssembly. It functions as a statically typed tool for the JavaScript ecosystem, enabling the development of applications for web browsers and Node.js environments. The project serves as a JavaScript interop framework, allowing the creation of type-safe facades and bindings to interact with external libraries and global objects. It provides mechanisms for both static and dynamic JavaScript invocation, including the generation of TypeScript bindings and the ability to export inte

    Scala
    View on GitHub↗4,701
  • wasm-bindgen/wasm-bindgenwasm-bindgen avatar

    wasm-bindgen/wasm-bindgen

    9,042View on GitHub↗

    wasm-bindgen is a glue code generator and interoperability tool that facilitates high-level communication and data exchange between compiled Rust modules and JavaScript environments. It functions as a memory bridge and type definition generator, allowing the exchange of complex data types and the calling of functions across execution boundaries. The project distinguishes itself by automating the conversion of data types and function signatures using attribute-based bindings. It generates the necessary JavaScript and WebAssembly wrappers to manage linear memory mapping and creates automatic Ty

    Rust
    View on GitHub↗9,042
  • oxc-project/oxcoxc-project avatar

    oxc-project/oxc

    21,675View on GitHub↗

    Oxc is a high-performance toolchain designed for the analysis, linting, formatting, and transformation of JavaScript and TypeScript codebases. It functions as a comprehensive static analysis engine and compiler-based utility, providing the infrastructure necessary to parse source code into high-performance abstract syntax trees and map complex module dependency graphs across entire projects. The project distinguishes itself through its use of multi-core parallel processing to maximize throughput during intensive tasks like linting and minification. It offers deep, type-aware static analysis t

    Rustcompilerjavascriptlinter
    View on GitHub↗21,675
Compare all 30 related projects→

Frequently asked questions

What does rescript-lang/rescript do?

ReScript is a statically typed programming language and compiler designed to transform type-safe source code into efficient, human-readable JavaScript. It functions as a transpiler that enforces data consistency and prevents runtime errors through static type analysis for both web and server applications.

What are the main features of rescript-lang/rescript?

The main features of rescript-lang/rescript are: Source-to-JavaScript Transpilers, Typed JavaScript Alternatives, Incremental Build Engines, Incremental Build Systems, JavaScript Compilers, JavaScript Interoperability, Type Safety, Statically Typed Languages.

Which projects share features with rescript-lang/rescript?

Projects with overlapping indexed features include: elm/compiler — This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed… scala-js/scala-js — Scala.js is a compiler and cross-platform language toolchain that transforms Scala source code into JavaScript or… wasm-bindgen/wasm-bindgen — wasm-bindgen is a glue code generator and interoperability tool that facilitates high-level communication and data… oxc-project/oxc — Oxc is a high-performance toolchain designed for the analysis, linting, formatting, and transformation of JavaScript… purescript/purescript — PureScript is a statically typed, purely functional programming language that compiles to JavaScript. It is designed… facebook/reason — Reason is a statically typed programming language and compiler based on the OCaml ecosystem. It translates high-level,…