Code Monkey home page Code Monkey logo

re-frame's Introduction

re-frame logo

Derived Values, Flowing

This, milord, is my family's axe. We have owned it for almost nine hundred years, see. Of course, sometimes it needed a new blade. And sometimes it has required a new handle, new designs on the metalwork, a little refreshing of the ornamentation ... but is this not the nine hundred-year-old axe of my family? And because it has changed gently over time, it is still a pretty good axe, y'know. Pretty good.

-- Terry Pratchett, The Fifth Elephant
    reflecting on identity, flow and derived values (aka The Ship of Theseus)

CI CD GitHub tag (latest by date) Clojars Project GitHub issues GitHub pull requests License

Overview

re-frame is a ClojureScript framework for building user interfaces. It is has a data-oriented, functional design.

re-frame has been designed from the ground up to make developers very productive when building large Single-Page applications. That's its promise to you. For many, it has delivered on this goal, and it has been enthusiastically praised.

Developed in late 2014, and released in 2015, it is mature and stable. It scales to 50K lines of code and beyond. It is used by small startups and by companies with 500 developers. It has outlasted multiple generations of Javascript churn, and still delivers a substantially better developer experience. Just imagine your team's productivity if you didn't have to contend with technical churn, and have new magic burn your fingers every two years.

re-frame provides another unfair advantage - ClojureScript is a Lisp. Alan Kay once described Lisp as "Maxwell's equations of software". Paul Graham described how Lisp was a competitive advantage for his startup. When we use Lisp, we get to leverage 50 years of foliated excellence from the very best minds available. We also get to leverage a thriving ClojureScript community which delivers modern ideas and best-in-class tooling.

re-frame was created by a programmer who had been developing for two decades before the Web was even "a thing". Yeah, that old. He's seen a UI or two along the way. Still has hair.

Although re-frame leverages React, it only needs React to be a V in MVC, and no more. re-frame does not buy into the sadly-pervasive idea that Views should be causal (colocated queries, ComponentDidMount, hooks, etc). In re-frame, events are causal and views are purely reactive.

Documentation

The re-frame documentation is available here.

The Current Version

Can be seen in the clojars badge above.

Licence

re-frame is MIT licenced

re-frame's People

Contributors

areina avatar bradleesand avatar cloojure avatar danielcompton avatar deg avatar dexterminator avatar dijonkitchen avatar dosbol avatar gadfly361 avatar grahack avatar gregg8 avatar hipitihop avatar lxsameer avatar manuel-uberti avatar markgdawson avatar martinklepsch avatar mbertheau avatar mike-thompson-day8 avatar mike706574 avatar oliyh avatar pesterhazy avatar richardharrington avatar scgilardi avatar si14 avatar simon-katz avatar smahood avatar stig avatar stumitchell avatar superstructor avatar thenonameguy avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.