fceruti

fceruti

High quality public phoenix projects

Hello,

I’m trying to level up my Elixir game and wanted to ask you for your favorite public phoenix projects in terms of code organization, quality of code, testing, coverage and docs.

As a bonus, can you tell us why do you this the particular project is great?

Thanks!

First Post!

RudManusachi

RudManusachi

I don’t think these projects require an introduction, but - check out the source code of Livebook and Hexpm

There is also a smaller project by hexpm - diff

But to me usually Phoenix is just a “thin” web-layer in front of the core application. And for that part there are plenty of projects to look at the code examples.. You could take any popular/battle tested library that you use a lot.. that you know the entry point and the output - and look at its internals to see how it works.. BTW, that’s another nice thing about libraries with well written docs - where you could easily jump to the source of the module or function =)

Most Liked

wmnnd

wmnnd

Keila is an open-souce Mailchimp alternative I’m developing and I aim to follow good coding practices with it. I’ve actually found myself referencing code from the project when explaining certain concepts to friends and I’ve occasionally even written tutorials on how certain parts of the code work.

Papercups

Papercups

I m the maintainer of GitHub - papercups-io/papercups: Open-source live customer chat · GitHub. We’re an open source live chat (intercom alternative). I think our quality needs some work tbh but a lot of our contributors come to us because we are very crud heavy so it tend to be a good starting point to check out Elixir code for your own projects.

We have over 1k real customers and users so if you want to see what an Elixir app looks like in production we are a good place to check out. Feel free to hop in our public Slack channel if you have any questions.

Werner

Werner

Or you can look at Bytepack .
It’s archived, but certainly a very good source of inspiration.

Or perhaps Changelog

Last Post!

mahmoud

mahmoud

I would like to mention BeaconCMS from DockYard.

Where Next?

Popular in Questions Top

vonH
In asking this question I am more interested about the expressiveness of the language itself and less concerned about the availability of...
New
mcarvalho
What is the difference between System.get_env and Application.get_env? For example, what are best practices to use one versus another.
New
ashish173
I am using Ecto timestamps with postgres, I can see the timestamps() use the :naive_dateime but for my use case I wanted to store the ti...
New
Lily
In templates/appointment/index.html.eex: <%= for appointment <- @appointments do %> <tr> <td><%= appoi...
New
sergio_101
I am VERY much an elixir newbie. I have taken one elixir course and one phoenix course on Udemy. During that course, I saw the instructor...
New
Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New
jason.o
In the code below, if the create action is not set to accept “extra_key” as an input, it errors out with a message shown above. Is there ...
New

Other popular topics Top

rms.mrcs
Hi, I need to transform a list of numbers into a map where the keys are the indexes and the values are the original values of the list. ...
New
nobody
Hi! In PHP: $_SERVER[‘SERVER_ADDR’] - in Elixir? Searched the docs for ip address and the web, no good results. Thanks!
New
joeerl
Hello again - after a longish gap I’ve decided I really must dig into Elixir and see what’s been happening here - so I have a few questio...
New
chrismccord
Phoenix 1.4.0 released Phoenix 1.4 is out! This release ships with exciting new features, most notably with HTTP2 support, improved deve...
688 31586 112
New
AstonJ
Seen any cool LiveView demos, sample apps or examples? Please post them here! :003:
New
jason.o
In the code below, if the create action is not set to accept “extra_key” as an input, it errors out with a message shown above. Is there ...
New

We're in Beta

About us Mission Statement