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
clojure avatar

clojure/clojurescript

0
View on GitHub↗
9,388 stars·786 forks·Clojure·EPL-1.0·22 views

Clojurescript

ClojureScript is a Lisp-based compiler and runtime that translates Clojure source code into JavaScript. It enables functional programming across different JavaScript engines and platforms, allowing developers to build user interfaces and applications for web browsers and server environments.

The project provides a read-eval-print loop for executing code live within a browser or server for immediate feedback. This facilitates an interactive development workflow where code can be written and tested in real time without restarting the application.

The system covers a broad capability surface, including JavaScript interoperability, multi-runtime targeting, and the integration of external module systems and package managers. It also includes tooling for source mapping, build analysis caching, and production size optimization.

Features

  • Interactive REPLs - Provides a read-eval-print loop for browsers or servers to execute code live and receive immediate feedback.
  • Source-to-JavaScript Transpilers - Translates Clojure source code into optimized JavaScript for execution in browsers and server environments.
  • Read-Eval-Print Loops - Uses a live read-eval-print loop to write and test code in real time without restarting the application.
  • Language Runtime Environments - Provides a runtime environment that enables Clojure code to operate across various JavaScript engines.
  • JavaScript Interoperability - Provides essential mechanisms for exchanging data and invoking functions between ClojureScript and the JavaScript runtime.
  • Persistent Data Structure Mappings - Maps immutable Clojure collections to optimized JavaScript objects to maintain functional programming semantics.
  • Frontend Dialects - Implements a functional Lisp-based language specifically targeted at the JavaScript runtime for building user interfaces.
  • Multi-Target Compilers - Compiles code for various environments such as browsers and servers to ensure cross-platform operation.
  • Lisp AST Transformations - Translates Lisp-style source code into an intermediate tree structure before generating JavaScript output.
  • Cross-Platform Runtimes - Ensures compatibility across different browsers and server-side environments by compiling a single codebase into JavaScript.
  • S-Expression Parsers - Processes nested parenthetical expressions into an internal representation for recursive analysis and compilation.
  • Full-Stack Web Development - Shares logic between server and client by compiling source to run on both Node.js and browser runtimes.
  • Functional Frontend Development - Enables writing browser-based applications using Clojure syntax that compiles to JavaScript for execution.
  • JavaScript Library Integrations - Implements mechanisms for importing and utilizing standard JavaScript packages and libraries within compiled code.
  • Incremental Build Caches - Stores analyzed source dependencies on disk to skip reprocessing unchanged files during the compilation cycle.
  • Dependency Management Configurations - Resolves and includes external modules from package managers during the build process to extend functionality.
  • Source Map Generators - Generates mapping files that correlate compiled JavaScript positions back to the original Clojure source lines.
  • Module System Interoperability Layers - Wraps compiled code in compatible formats for seamless integration with CommonJS or ES module systems.
  • Dynamic Runtime Injection - Injects a core library at runtime to provide essential language features like namespaces and global state.
  • Unit Testing Frameworks - Supports executing test suites using asynchronous testing libraries to verify code behavior.
  • Asset Bundlers - Exports code using standard targets to streamline the process of bundling assets for production.
  • Functional Languages - Lisp dialect with immutable data structures.
  • Programming Languages - Clojure to JavaScript compiler.
  • Testing Frameworks - Integrated testing framework for verifying application logic.

Star history

Star history chart for clojure/clojurescriptStar history chart for clojure/clojurescript

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. 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

Open-source alternatives to Clojurescript

Similar open-source projects, ranked by how many features they share with Clojurescript.
  • reasonml/reasonreasonml avatar

    reasonml/reason

    10,313View on GitHub↗

    Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web environments or native machine code for operating systems. It serves as an OCaml-compatible language that shares an abstract syntax tree with OCaml, providing a practical syntax for the OCaml ecosystem. The project functions as a type-safe frontend language, incorporating JSX support to build user interfaces through structural elements that translate into type-safe function calls. It enables deep integration with the JavaScript ecosystem, allowing the use of existing librarie

    OCamljavascriptocamlprogramming-language
    View on GitHub↗10,313
  • rescript-lang/rescriptrescript-lang avatar

    rescript-lang/rescript

    7,396View on GitHub↗

    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 JavaScr

    ReScriptaltjscompilerjavascript
    View on GitHub↗7,396
  • brython-dev/brythonbrython-dev avatar

    brython-dev/brython

    6,598View on GitHub↗

    Brython is a Python 3 runtime and interpreter that executes scripts directly in the web browser. It serves as a client-side environment that translates Python source code into executable JavaScript to handle frontend logic without requiring server round-trips. The project provides a bidirectional interoperability bridge between Python and JavaScript, allowing for the integration of external JavaScript libraries. It further functions as a tool for packaging Python scripts into standalone native mobile applications for Android devices. The runtime includes a library for programmatic manipulati

    Python
    View on GitHub↗6,598
  • konsoletyper/teavmkonsoletyper avatar

    konsoletyper/teavm

    2,997View on GitHub↗

    TeaVM is a Java bytecode transpiler and browser-based JVM runtime that converts compiled Java class files into JavaScript or WebAssembly. It functions as a compiler and build pipeline tool that enables applications written in various JVM languages to execute natively within a web browser. The project distinguishes itself by transforming bytecode directly into optimized web formats without requiring the original source code. It includes a WebAssembly bytecode compiler for high-performance execution and a specialized emulation system to handle asynchronous multithreading within the single-threa

    Javaaotjavajavascript
    View on GitHub↗2,997
See all 30 alternatives to Clojurescript→

Frequently asked questions

What does clojure/clojurescript do?

ClojureScript is a Lisp-based compiler and runtime that translates Clojure source code into JavaScript. It enables functional programming across different JavaScript engines and platforms, allowing developers to build user interfaces and applications for web browsers and server environments.

What are the main features of clojure/clojurescript?

The main features of clojure/clojurescript are: Interactive REPLs, Source-to-JavaScript Transpilers, Read-Eval-Print Loops, Language Runtime Environments, JavaScript Interoperability, Persistent Data Structure Mappings, Frontend Dialects, Multi-Target Compilers.

What are some open-source alternatives to clojure/clojurescript?

Open-source alternatives to clojure/clojurescript include: reasonml/reason — Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web… rescript-lang/rescript — ReScript is a statically typed programming language and compiler designed to transform type-safe source code into… brython-dev/brython — Brython is a Python 3 runtime and interpreter that executes scripts directly in the web browser. It serves as a… konsoletyper/teavm — TeaVM is a Java bytecode transpiler and browser-based JVM runtime that converts compiled Java class files into… typestrong/ts-node — ts-node is a TypeScript execution engine and just-in-time transpiler for Node.js. It enables the direct execution of… scala-js/scala-js — Scala.js is a compiler and cross-platform language toolchain that transforms Scala source code into JavaScript or…