Re Frame screenshot

Re Frame

Author Avatar Theme by Day8
Updated: 18 May 2025
5470 Stars

A ClojureScript framework for building user interfaces, leveraging React

Overview

Re-frame is a ClojureScript framework designed for building user interfaces, focusing on high programmer productivity and scalability for single-page applications. Developed in late 2014, it remains mature and stable. The framework operates with a data-oriented, functional design and has proven itself in both small startups and large companies, handling applications of over 40K lines of code. Leveraging the advantages of being built on ClojureScript, re-frame offers a unique approach to UI development, bringing stability in a landscape known for rapid technological changes.

Features

  • Data-Oriented Design: re-frame follows a data-oriented design approach, enhancing clarity and predictability in development.
  • Functional Programming: The framework embraces functional programming principles, promoting immutable data and state management.
  • Stability and Maturity: With over 6 years in development and deployment, re-frame is recognized for its stability and maturity, catering to projects of varying scales.
  • Leveraging ClojureScript: Built on ClojureScript, re-frame taps into the rich history and advantages of Lisp, offering a competitive edge in software development.
  • Reactive Views: Unlike traditional approaches, re-frame emphasizes events as causal and views as reactive, presenting a unique perspective on UI architecture.

Installation

To install re-frame, add the following dependency to your project.clj or build.boot file:

[re-frame "x.x.x"]

Replace “x.x.x” with the latest version available on the Clojars project page. For detailed dependency information, refer to the Clojars page. Additionally, for support and assistance, join the re-frame community on Slack.

Summary

Re-frame stands out as a robust and innovative framework for ClojureScript UI development, offering developers a stable foundation and productive environment for building single-page applications. By incorporating functional programming and leveraging the advantages of ClojureScript, re-frame sets itself apart in a rapidly evolving tech landscape, providing a unique perspective on event-driven UI architecture. With a thriving community and extensive documentation, re-frame remains a reliable choice for projects of all sizes seeking stability and scalability in UI development.