Aviacommerce: Elixir open source e-commerce framework

Aviacommerce is an open source e-commerce framework written in Elixir/Phoenix. Project website https://aviacommerce.org

Feel free to share your feedback on Gitter with the team https://gitter.im/avia-commerce/Lobby

Feedback welcome!

Deploying ExVenture

The past few days I’ve been working on making ExVenture significantly more easy to deploy, and I wrote up a small how-to with the new setup.


How I Centralized Our Scattered Business Logic Into One Clear Pipeline


Shameless plug: Check out @elixirstatus' other community project:

Credo, a new static code analysis tool that acts as a code linter, but also focusses on teaching coding practices and code consistency.

[Video] Property based testing in Elixir by Luc Tielen

Presentation at NextBuild 2018 from Luc Tielen about property based testing in Elixir

plug_checkup: with configurable JSON encoder

New version of plug_checkup. Now you can choose which JSON encoder to use with it.

Lens: traverse recursive data

The lib has been live for some time, but please feel free to check out lens for your recursive-datastructure-traversal needs.


ExDocRefined: A refined document viewer for Elixir

I recently released ExDocRefined, a refined document viewer for Elixir


ExDocRefined is written as an alternative for ex_doc.

As the demo shown above, you can quickly view the your project’s documentation with decent Material UI and execute function directly from document.

Check it out GitHub

Getting Started with Ecto Part 3: CRUD Operations

Part 3 of Getting Started with Ecto how to execute CRUD operations against our Postgres database using Ecto.

Disco: simple, opinionated yet flexible library to build CQRS/ES driven systems.

Simple, opinionated yet flexible library to build CQRS/ES driven systems.

Disco has been extracted from work done to build apps following the CQRS/ES pattern. Several ideas come from other excellent examples such as commanded. However, the goal was to build something simpler and more flexible, because it’s not always possible to follow 100% CQRS/ES pattern neither anywhere in your apps. Disco tries to solve this gap.

Source: https://github.com/andreapavoni/disco

Docs: https://hexdocs.pm/disco/Disco.html

ElixirWeekly: The Elixir Community Newsletter, covering community news you easily miss, shared on ElixirStatus and the web, in one email every Thursday.

Sigils To The Rescue

As I continue working on Exvalibur, the generator for blazingly fast validators of maps based on sets of predefined rules, I have implemented custom guards and pattern matching of values.

I just blogged about how I used custom sigils to allow quoted expressions in the rules.

Running Elixir in Docker Containers

In this article we see how to use Docker to run our development Elixir environment and to run multiple Elixir Nodes over a Docker bridge network.

Running Elixir in Docker Containers

oneksy.ex v0.11.2 released!

We have finally released a stable version of /onesky.ex and we’re very much looking forward for your feedback and/or contributions. https://github.com/ahtung/onesky.ex

ElixirMix Podcast 031 - Lessons from a Decade of Erlang with Brujo Benavides

In this episode of ElixirMix, the panel talks with Brujo Benavides about Elixir from an Erlang perspective, the blending of Elixir and Erlang communities, GenServers, 10 Lessons from Decade with Erlang, Spawnfest, and much more!

Podcast Episode

Practicing Recursion with a Guess the Word Game

Let’s build a guess the word game using recursion!


Breaking the rules when writing unit tests

This is part 3 in a series on unit testing in Elixir. In this post, I show two of the places where I break some of the rules that I set out earlier when I’m writing unit tests: http://devonestes.herokuapp.com/unit-tests-in-elixir-part-3

nerves_neopixel is now Blinkchain!

If you want a fun project to hack on over the upcoming holiday, pick up some NeoPixel RGB(W) LEDs for your Raspberry Pi-based Elixir/Nerves device and check out the latest release of blinkchain (formerly known as nerves_neopixel). It now supports commands to draw on a mutable 2D virtual canvas (e.g. composed of a bunch of strands or one or more Pimoroni Unicorn hats) instead of having to calculate the updated values for all LEDs manually each “frame.”

Check out the example and let me know what you think!

How Learning Elixir Made Me a Better Programmer

My notes on learning Elixir and how it helped me with my day job, where I dont write Elixir.


Morphix 0.5.0 released, now with unordered equality!

We sometimes run into a problem where we want to compare two enumerables for content, irrespective of ordering. So we’ve added equalify and equaliform (recursive version) methods to morphix to handle that situation. https://hex.pm/packages/morphix

Map vs List Performance

An optimization I made to use a map instead of enumerating through lists to match elements of a big dataset took the operation time from 30+ minutes to less than a second.


just released erlang-rocksdb 0.26.0, a binding of rocksdb embedded K/V database

This version is using cmake for the build and allows you to customize your installation by reusing the libraries installed on your system: https://gitlab.com/barrel-db/erlang-rocksdb/tags/0.26.0

also available on hex.pm : https://hex.pm/packages/rocksdb