staymetal

staymetal

What other use cases of Elixir are there other than web development?

General Question

What can elixir be used for?

Most Liked

benwilson512

benwilson512

Author of Craft GraphQL APIs in Elixir with Absinthe

Web Dev is something of a broad category these days, in that a whole lot of things happen to have a web interface.

So for example, we use Elixir to manage the upgrade and configuration of industrial sensors. We’ve got a raspberry pi with an Elixir service on it that watches for sensors to connect, handles queueing up data files on them for upload, and then manages state machines for each sensor as they’re upgraded or conditioned.

It also has a web UI powered by phoenix channels so that it can show the status of each sensor live. So it’s sort of web dev, but it may help answer your question.

ryh

ryh

Telephony of course :slight_smile:

I’m using it to send messages to mod_kazoo on FreeSWITCH (but of course this is so that we can interact with it from a web front-end)

smpallen99

smpallen99

I have written a number of non-web projects including:

  • Log file parser
  • protocol parser
  • lots of competitive programming exercises
  • a couple simple language intrepeters
  • a complex telephony application
  • a reliable udp stack
  • Asterisk PBX AMI and AGI implementations
  • and Emergency call out system (web front end was a small component of the application)
  • general purpose scripts
easco

easco

Elixir is a programming language for working in the Erlang ecosystem. The Erlang system is applied to any number of things where reliability (fault tolerance), concurrency and distribution are key features. Erlang was originally created for telecom systems, like phone switches, but has been applied to creating databases (e.g. Riak, CouchDB, Cloudant), online games, sports entertainment systems, systems for placing wagers, online communication systems like WhatsApp, media distribution applications… lots of things.

Now in some of those cases folks are using the Erlang language (rather than Elixir) but Elixir would be just as applicable in those cases as well.

Phoenix is the archetypal framework, written in Elixir, for creating an application with a web server. I’ve used Phoenix with Absinthe to create a web application that presents an GraphQL interface… but I’ve also used Elixir for “middle tier” systems (systems that handle the flow of information between a front-end application and a back-end system). I’ve also created utility applications that do things like scrape GitHub Repos and generate reports (scraping the repos in parallel).

Even more through the “Nerves” project you can create embedded systems that use Elixir. I have a Raspberry Pi based system I’ve been working on which interfaces with thermocouples and a fan to provide a barbecue controller (yes… you could go buy one of those, but where is the fun in that?).

So there are lots of uses outside of web development. The hallmarks of the platform are concurrency, resilience, and distribution - Elixir is a great fit for any system that needs those things.

OvermindDL1

OvermindDL1

I have IRC and Discord bots, some servers that manage game servers, a static site generator, and a few more things actively running in either Elixir or Erlang right now that are not web servers.

Where Next?

Popular in Questions Top

srinivasu
How to handle excepions in elixir? Suppose i have A, B, C ,D, E modules. and each module has get() function. A.get() method will call th...
New
aalberti333
As the title describes, I’m trying to run Enum.map() over a list of key/value pairs, where the value is a map. My data looks like this: ...
New
nsuchy
Hi. I’ve noticed that Windows Powershell has it’s own IEX command and you cannot access Elixir’s IEX due to the conflict. This isn’t a cr...
New
myronmarston
The Elixir Typespec docs show the following syntax for keyword lists in typespecs: # ... | [key: type] # keyword lis...
New
alice
Hey, Just curious what are the main benefits of Elixir compared to Clojure? When is Elixir more useful than Clojure and vice versa? Th...
New
LegitStack
I’m trying to make a websocket server in Phoenix or raw Elixir. I heard about gun, I think I could use cowboy, but since I’m not that sma...
New
chewm
Hi guys, nice to meet you to the whole forum, I’m new here, I’m trying to configure visual studio code for elixir, right now the intellis...
New
belgoros
I’m not a pro in using Regex and can’t figure out why the following behaviour happens, especially if we take into account the difference ...
New
Fl4m3Ph03n1x
About me? ( if you have nothing better to do than reading about some random guy in the internet :stuck_out_tongue: ) Hello all, this is ...
New
skosch
To my knowledge, put_in, Map.update etc. all have the one limitation of not automatically creating intermediate keys when needed (for exa...
New

Other popular topics Top

srinivasu
How to handle excepions in elixir? Suppose i have A, B, C ,D, E modules. and each module has get() function. A.get() method will call th...
New
Tee
can someone please explain to me how Enum.reduce works with maps
New
joaquinalcerro
Hi there, I am working with Ecto-Postgresql and I need to call all of the records from a specific table but the table has 40,000 record...
New
Jim
As a follow up to my earlier question: I have the code compiling and running but not getting a successful login from the rest server. ...
New
lastday4you
I wanted to check elixir version in phoenix because i found that my elixir is 1.5 but when i use Enum.chunk_by it said the function is un...
New
freewebwithme
Using vs code and installed ElixirLS: support and debugger. And I got an error popped up on start up says Failed to run ‘elixir’ comma...
New
baxterw3b
Hi guys, i’m new in the Elixir world, and i have to say, that i love it! i’m having some problem to understand anonymous functions with ...
New
TunkShif
This post is an instruction guide to help you setup your Neovim for Elixir development from scratch. It includes general information on h...
273 38985 115
New
AstonJ
We’ve put together this wiki for Phoenix LiveView - please feel free to add any info you feel is worth including. What is Phoenix LiveV...
New
magnetic
Hey :wave:t3: Elixir community, I’ve been learning Elixir, and working on some side projects. My editor of choice is VSCode, and althoug...
New

We're in Beta

About us Mission Statement