Reanimate: Haskell library for building declarative animations from SVG graphics

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • reanimate

    Haskell library for building declarative animations based on SVG graphics

  • Is this the discussion you're referring to? https://github.com/reanimate/reanimate/discussions/210

    It's actually pretty interesting to read. The author makes a not totally unreasonable argument as for why it uses unsafePerformIO.

    Now what I'm really curious about is why the very first example on the site I clicked into the source code for, a simple 59-line example, is using unsafePerformIO. That actually worries me more because it suggests that as a user I might have to use unsafePerformIO. https://github.com/reanimate/reanimate/blob/d4d3898831edb4aa...

  • plot-create-react-app-example

    An example of Observable Plot with Create React App

  • Yeah, I wish this project had a React component backend.

    D3.js and Observable Plot don't work that well with modern reactive frontend frameworks either though. They don't diff the SVG tree. The recommended way to react to some data change is to rebuild the whole SVG in a useEffect [1], when in fact you could just have a reactive SVG tree [2]. You just have to unpack and recode what would D3 do (see the case about Axis in the last link). Using enter(), update() and exit() seems to no longer be the way to do things. Also, React components offers great composability to the programmer.

    I wish there was a maintained React version of Observable Plot; just like what React-Three-Fiber [3] does with Three.js. Or maybe a version of this Reanimate lib into a React component.

    [1] https://github.com/observablehq/plot-create-react-app-exampl...

    [2] https://wattenberger.com/blog/react-and-d3

    [3] https://github.com/pmndrs/react-three-fiber

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • Yeah, I wish this project had a React component backend.

    D3.js and Observable Plot don't work that well with modern reactive frontend frameworks either though. They don't diff the SVG tree. The recommended way to react to some data change is to rebuild the whole SVG in a useEffect [1], when in fact you could just have a reactive SVG tree [2]. You just have to unpack and recode what would D3 do (see the case about Axis in the last link). Using enter(), update() and exit() seems to no longer be the way to do things. Also, React components offers great composability to the programmer.

    I wish there was a maintained React version of Observable Plot; just like what React-Three-Fiber [3] does with Three.js. Or maybe a version of this Reanimate lib into a React component.

    [1] https://github.com/observablehq/plot-create-react-app-exampl...

    [2] https://wattenberger.com/blog/react-and-d3

    [3] https://github.com/pmndrs/react-three-fiber

  • react-three-fiber

    🇨🇭 A React renderer for Three.js

  • Yeah, I wish this project had a React component backend.

    D3.js and Observable Plot don't work that well with modern reactive frontend frameworks either though. They don't diff the SVG tree. The recommended way to react to some data change is to rebuild the whole SVG in a useEffect [1], when in fact you could just have a reactive SVG tree [2]. You just have to unpack and recode what would D3 do (see the case about Axis in the last link). Using enter(), update() and exit() seems to no longer be the way to do things. Also, React components offers great composability to the programmer.

    I wish there was a maintained React version of Observable Plot; just like what React-Three-Fiber [3] does with Three.js. Or maybe a version of this Reanimate lib into a React component.

    [1] https://github.com/observablehq/plot-create-react-app-exampl...

    [2] https://wattenberger.com/blog/react-and-d3

    [3] https://github.com/pmndrs/react-three-fiber

  • clumsy-graphics

    a tool for rapidly developing animations where frames are described using svg elements à la react 🙃

  • for those interested in a typescript / react alternative checkout https://github.com/clumsycomputer/clumsy-graphics

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts