Genie.jl VS frunk

Compare Genie.jl vs frunk and see what are their differences.

frunk

Funktional generic type-level programming in Rust: HList, Coproduct, Generic, LabelledGeneric, Validated, Monoid and friends. (by lloydmeta)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
Genie.jl frunk
21 7
2,185 1,199
0.5% -
8.7 5.9
3 days ago 3 months ago
Julia Rust
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Genie.jl

Posts with mentions or reviews of Genie.jl. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-09.
  • Tidyverse 2.0.0
    9 projects | news.ycombinator.com | 9 Apr 2023
    Julia seems to be doing a better job catching up to R in this space than Python. I haven't used it personally, but the demos of Genie Framework are impressive: https://github.com/GenieFramework/Genie.jl / https://genieframework.com/
  • Show HN: Genie Cloud – no-code platform to build and deploy Julia web apps
    1 project | news.ycombinator.com | 31 Mar 2023
    Hi everyone! I’m Adrian, co-founder of Genie Cloud. Genie Cloud is the no-code platform to quickly build & deploy Julia web apps. It is designed for R&D and data science teams using Julia, who need to share their work with interactive web apps.

    Genie Cloud is very simple: import (or write) the Julia code, build the GUI with the drag & drop editor, and deploy the apps in one-click. No frontend code, server stack or hosting to worry about. With Genie Cloud you can build anything, from interactive dashboards to ML demos to production-grade apps.

    Genie Cloud is built on top of the open source Genie Framework (https://genieframework.com/), the most popular Julia web framework (I’m also the creator and maintainer of Genie Framework).

    At the moment we are in private beta. You can learn more and sign up to get access here: https://www.geniecloud.io/. Looking forward to your thoughts and questions!

  • Julia outside of academia?
    1 project | /r/Julia | 14 Feb 2023
    I used Julia through my PhD but then started working at a consulting company and had to use Python except for few proof of concepts I built in Julia. Luckily for me, now I'm working at Genie so I finally get to use Julia professionally :)
  • GUI library suggestion for school project
    1 project | /r/Julia | 23 Oct 2022
    Have you checked https://genieframework.com/? It's the most popular web dev framework in Julia.
  • Help With Next Language Decision
    6 projects | /r/Julia | 25 Sep 2022
  • Show HN: Genie Builder, no-code UI plugin for building data apps
    1 project | news.ycombinator.com | 5 Aug 2022
    Hi! Genie Builder is a free VSCode plugin that makes it easy to build web GUIs for Julia applications (and in future, Python apps too). Users can simply drag & drop UI elements to create interactive dashboards and data apps, without writing any frontend code.

    The tool is designed for data scientists and researchers who need to expose their data models to business users with an interactive web application, but lack the software development skills to build one.

    Genie Builder completely eliminates the need to learn frontend development to code the UI. And very soon, we’re also going to support one-click cloud deployments to make it easy to build AND deploy data apps - no frontend nor devops skills required.

    I’m Adrian, the creator of the open-source Genie web framework ([https://genieframework.com/](https://genieframework.com/)). Genie offers low-code libraries for building data applications - just like Streamlit or Dash, but for JuliaLang. We developed Genie Builder because of feedback from our open source community who needs more productive data tooling.

  • Beginner's Series to Rust
    5 projects | news.ycombinator.com | 21 Jun 2022
    Yep, I'm a PHP dev and often do simple JS/jQuery to support my backend code. I have a very general interest in data science and embedded programming, meaning one day I might start doing something with them, but for now, I'm interested in those languages for web development. The following frameworks were especially interesting

    Go: https://github.com/gin-gonic/gin

    Rust: https://rocket.rs/

    Julia: https://genieframework.com/

  • Plotting in a GUI with Julia
    3 projects | /r/Julia | 14 Jun 2022
    Check Genie. They're working on an app builder called Genie Cloud.
  • GenieFramework – Build web applications with Julia
    1 project | /r/WhileTrueCode | 6 Apr 2022
    1 project | /r/patient_hackernews | 6 Apr 2022

frunk

Posts with mentions or reviews of frunk. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-16.
  • Apply generic function to every tuple element
    1 project | /r/learnrust | 22 May 2023
    So rust doesn't support variadics, but I have heard some murmurings around the topic. In the meantime, you can still do a lot with recursive tras. The frunk crate makes working with them a lot easier: In this case
  • Self Referencing structs with different generic types
    1 project | /r/learnrust | 24 Feb 2023
    I think the closest possible approach is the one used in frunk where those consecutive types are nested recursively (creating a linked list on type level basically) and special type is used as the end.
  • Is there a convenient way to convert a struct<T> (where all fields are of type T) into struct<U> where U: From<T>?
    2 projects | /r/rust | 16 Feb 2023
    I suggest looking into frunk. You could convert the struct into an HList, map over the values to convert and convert into the target struct. README has some relevant examples.
  • Can we make useful streaming APIs that disallow deadlocks?
    3 projects | /r/rust | 20 Jan 2023
    So a while back I got interested in how rust could provide parallel/concurrent APIs that prevent deadlocking shared state. I now created a Proof-of-Concept stream processing library that attempts to do that. The library makes prodigious use of heterogeneous lists from the frunk library. The basic idea is that you can build a graph by combining source streams as source nodes and mutexes for state, then you can add nodes which subscribe to subsets of the previous nodes using various combinators. You can either
  • constduck: compile-time duck typing and reflection powered by const generics
    3 projects | /r/rust | 13 Nov 2021
    Hey, #[derive(LabelledGeneric)] from frunk does something like this, but without const generics, so it has odd representations for things like type-level strings (it's represented as a tuple of chars so (a, b, c) is the type-level representation of the string "abc")
  • Symbolics.jl: A Modern Computer Algebra System for a Modern Language
    6 projects | news.ycombinator.com | 5 Mar 2021
    I don't understand why you call it "trickery or "fake". Church encoding of natural numbers is the same technique used in Agda, Coq and Idris to represent the Peano numbers. It's a completely valid encoding and isomorphic to any other representation.

    You don't need to use a fixed-length array either - you can used a recursive linked list at the type-level for an unbounded encoding [1]. The Scala library is an example of that; the Github page even has an example of encoding arbitrary units like sheep and wheat.

    [1] https://github.com/lloydmeta/frunk

  • Generic associated types encode higher-order functions on types
    3 projects | /r/rust | 4 Jan 2021
    I wonder if frunk can (ab)use this kind of trick to make their crate even more powerful. IIRC they have a bunch of amazing and horrible workarounds to work with type-level lists.

What are some alternatives?

When comparing Genie.jl and frunk you can also consider the following projects:

Dash.jl - Dash for Julia - A Julia interface to the Dash ecosystem for creating analytic web applications in Julia. No JavaScript required.

tyrade - A pure functional language for type-level programming in Rust

PlutoSliderServer.jl - Web server to run just the `@bind` parts of a Pluto.jl notebook

stately-streams - combine mutable state and asynchronous streams without deadlocks

Visual Studio Code - Visual Studio Code

sicmutils - Computer Algebra, Physics and Differential Geometry in Clojure.

PackageCompiler.jl - Compile your Julia Package

scroll - Scroll - making scrolling through buffers fun since 2016

Chain.jl - A Julia package for piping a value through a series of transformation expressions using a more convenient syntax than Julia's native piping functionality.

Algebird - Abstract Algebra for Scala

Revise.jl - Automatically update function definitions in a running Julia session

typic - Type-safe transmutations between layout-compatible types.