gnat

gnat

I’m completely new to Elixir and don’t know Ruby, either.

Is anyone writing GUI applications in Elixir? I don’t know the language and the easiest way for me to learn (not to mention the way I’d primarily be using any language right now) is for desktop applications with a GUI front end - ideally something that will work on both Mac and Linux. What are my choices and how well supported/ integrated are they? In case it matters, I’m specifically interested in writing a distributed business application connecting multiple machines over the internet. From that standpoint, Elixir seems like it might be a good fit. But I need to have a GUI interface and not just in a browser.

I tried to research this question first with a web search and then with a search on this site; I haven’t found any good answers so far.

Showing Posts 21 to 12

Snake-Sanders

Snake-Sanders

I passed by the other day to check out what was new on this topic, I did a quick search and I found this awesome project:

Elixir Desktop

LostKobrakai

LostKobrakai

Did you manage to get something working with webview? Sounds like an interesting option compared to electron.

outlog

outlog

please do keep us posted, sounds awesome - dream scenario would be an app that you could build for desktop and/or for the nerves kiosk GitHub - nerves-web-kiosk/kiosk_system_rpi3: Nerves QtWebEngine Kiosk system for Raspberry Pi 3 · GitHub

Gee5ive

Gee5ive

Kind of late to the party here, but for anyone still interested in this, I’m currently building a phoenix app that I plan to distribute on desktops using webview, seems to be the most simple and straightforward approach.

WildYorkies

WildYorkies

I wonder if using ElixirScript and compiling to electron would be a possibility :thinking:

WildYorkies

WildYorkies

I agree. People are going crazy over component oriented architecture now. Isolating and orchestrating state is selling like hot cakes.

Elixir is designed for this, no? This kind of reactive design.

yawaramin

yawaramin

Here’s Joe Armstrong’s research on GUI options for Erlang: [erlang-questions] My quest for a decent way to make a GUI in erlang

mchean

mchean

So maybe just presenting the browser as a GUI interface would be the best solution?

bbense

bbense

There’s a kind of chicken and egg problem here. IMHO, the BEAM would be a pretty awesome GUI app environment, but it doesn’t have a robust interface to the client windowing API. There is the wx interface, but the problem with putting any GUI library in as a NIF is that it can crash the BEAM.

One way around this is to use the browser and javascript as your GUI interface.

Creating a Port interface to OpenGL is also pretty intriguing. However, I think for Native UI Desktop Apps, Elixir is going to be an uphill battle. There will likely be places where this battle is worthwhile, but I think for most applications the time to delivery penalty will be too great until more of the spadework in library interfaces is available.

What might make more sense is to drive an Elixir app via a GUI wrapper if your underlying problem maps well to what the BEAM does well. (i.e. if your basic problem is “embarrassingly parallel” and I/O limited ) What would scream “Elixir Desktop App” to me is a problem that using the increasing number of cores available on high end desktops would help.

While Elixir will never likely be the fastest on 1 or two cores, once you’ve solved your problem in Elixir it becomes much easier to throw 24 or (128) cores at it and see reasonable speed ups. Right now those kinds of machines are mostly servers, but that level of concurrency will eventually make it’s way into desktop computing.

mchean

mchean

I write mostly GUI business apps, and also need a lot of reporting. The Little Elixir & OTP Guidebook states in the intro that Elixir that Elixir & GUI don’t mix, but several presentations at the Elixir Conf, including the Toyota Way seems to indicate that large companies have embraced Elixir for business apps. Am I barking up the wrong tree here?
A corollary question is whether any of you are using reporting tools, and whether you are writing your ORM in Ecto, if I understand that correctly, or in stored procedures. It seems to me that in order for a reporting tool to interact with the data it would have to be outside of Ecto.

Where Next? Top

Trending in Questions Top

RSP87
I’m working on a project that simulates the bumbl example in the programming phoenix book. It acts almost like an email client. We have a...
New
nseaSeb
Hello, I know there is an approach for handling lists that allows for optimized traversal, but I can’t recall the specific method (somet...
New
RemyXRenard
I’m seeing that a list inside a Kino.DataTable will be interpreted as a charlist, even if the Kino.configure() is set to charlists: :as_l...
New
velrest
So my question is quite simple and i have found no conclusive answer on forum, google or AI. Should we use :erlang.float for Integer to ...
New
brecabral
Documentation While reading the Scoped Routes section, I noticed that the documentation currently refers to a problem without explainin...
New
samoloth
Hi, I’ve just set up an application with ash_authentication. There is only magic link strategy for now, so there is no confirmation add o...
New
FlyingNoodle
If a change or preparation module uses Ash.Changeset.get_argument/2 or Ash.Query.get_argument/2 (or any of the other get_argument functio...
New

Other Trending Topics Top

mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Dmk
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
webofbits
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself. My main conc...
#ai
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews