10 Years(-Ish) of Elixir

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

CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. phx_gen_auth

    Discontinued An authentication system generator for Phoenix 1.5 applications.

    Thank you for your work on adding user registration and authorization to Phoenix!

    I'm setting up a new Phoenix app for a side project this weekend and have just run Arron Renner's [auth generator](https://github.com/aaronrenner/phx_gen_auth). Having user registration out of the box will save a big chunk of time and energy!

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. elixir-raknet

    An Elixir client for the core of the RakNet networking protocol, useful for games and other latency-sensitive applications that typically rely on UDP

    Happy Elixir user here. At work we have a use case that isn't covered by José's high-level overview of the domains Elixir's used in: we run a massive multiplayer game server on it.

    This is actually a really good fit. (It kind of rhymes with the original use of Erlang, being telecoms infrastructure.) We get outstanding concurrency support, high reliability, and really efficient development times. I can't imagine shipping this feature with a server written in C++ (the language I'm most comfortable in), and I can't imagine scaling it the way we need to if we'd gone for a traditional web language like Node, PHP, etc.

    If you're interested, you can see the RakNet (game networking protocol) implementation we use on the server here:

    https://github.com/X-Plane/elixir-raknet

    The README gives a good overview of the full MMO server's architecture, too: each client connection is a stateful Elixir process (not to be confused with a heavy-weight OS process!), acting asynchronously on a client state struct; clients then asynchronously schedule themselves to send updates back to the user.

  4. credo

    A static code analysis tool for the Elixir language with a focus on code consistency and teaching.

    Yes there is a formatter built into Mix, the Elixir build tool. There is also https://github.com/rrrene/credo which is not as extensive but does the same thing as ESLint.

  5. canada

    Easy permission definitions in Elixir apps!

    There are packages on Hex that haven't been updated in a long time but still work perfectly (Canada, for example: https://github.com/jarednorman/canada). Elixir itself doesn't change much... in fact there's no plans for a 2.0 on the horizon, so the fact that packages don't change often isn't a big deal if they still do what they say they do and aren't hurting for more features.

  6. stm_agent

    Discontinued Software transactional memory for Elixir.

    Do you use it for server side game logic too?

    It's not as ambitious as an MMO, but I like to use MUDs to learn new languages. I've been (slowly) working on one to learn Elixir and I'm actually finding the concurrency model somewhat difficult to use for the MUD - especially the single world that every player connects to.

    I ended up writing my own kind of software transactional memory library to help me out: https://github.com/stevbov/stm_agent

    But relying on a library like this feels fairly un-Elixir-like. It seems like the language would shine more in a problem space where there's not so much potential for arbitrary processes to depend upon eachother.

  7. ex_venture

    Discontinued Text based MMORPG engine written in Elixir

    You'd likely be interested in the work done by Eric Oestrich in building MUDs with Elixir.

    Kalevala: a world building toolkit for text based games, written in Elixir [0]

    ExVenture: a text based MMO server written in Elixir [1]

    Grapevine: a MUD chat network [2]

    [0] https://github.com/oestrich/kalevala

    [1] https://github.com/oestrich/ex_venture

    [2] https://github.com/oestrich/grapevine

  8. scrivener_ecto

    Paginate your Ecto queries with Scrivener

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub 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

  • Grapevine the MUD Community Site

    1 project | news.ycombinator.com | 5 May 2024
  • Can I use pow with LiveView?

    1 project | /r/elixir | 12 May 2023
  • What happened to TMC?

    1 project | /r/MUD | 4 May 2023
  • 2023 iOS Mud Client?

    1 project | /r/MUD | 27 Mar 2023
  • Am I looking for PBP? I haven't done this since the '00s!

    1 project | /r/RoleplayingForReddit | 23 Mar 2023

Did you know that Elixir is
the 24th most popular programming language
based on number of references?