• Stars
    star
    127
  • Rank 272,930 (Top 6 %)
  • Language
  • License
    Other
  • Created almost 2 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Livebook-based guide to async processing in Elixir. 🏃

Asynchronous Processing in Elixir 🏃

Cover image of some abstract lights

This is a short interactive guide to asynchronous data processing in Elixir. It uses Livebook to show interactive Elixir snippets that you can run on your own machine.

How Do I Use This?

There are a handful of livebooks in this guide. Using the badges below, you can import them to your computer and run and explore them there. My recommendation is to use the Livebook desktop app that you can find on its website.

01 — Processes

Run in Livebook

In this livebook we talk about the basics of processes and message passing.

02 — Tasks

Here, we talk about the Task abstraction that ships in Elixir's standard library.

Run in Livebook

03 — GenStage

GenStage is an Elixir library maintained by the Elixir core team. It lets you build pipelines of stages through which events flow.

Run in Livebook

04 — Flow

Flow is another Elixir library maintained by the core team. It builds on top of GenStage to provide an API similar to Enum and Stream, but for parallel data processing.

Run in Livebook

05 — Broadway

Broadway lets you build declarative data ingestion and processing pipelines. It supports several sources (RabbitMQ, Kafka, AWS SQS, and more).

Run in Livebook

License

See the license file.

"Social preview" photo by Bofu Shaw on Unsplash.

More Repositories

1

vim-gotham

Code never sleeps in Gotham City. 🌃
Vim Script
1,215
star
2

redix

Fast, pipelined, resilient Redis driver for Elixir. 🛍
Elixir
1,062
star
3

stream_data

Data generation and property-based testing for Elixir. 🔮
Elixir
834
star
4

corsica

Elixir library for dealing with CORS requests. 🏖
Elixir
513
star
5

xandra

Fast, simple, and robust Cassandra/ScyllaDB driver for Elixir.
Elixir
378
star
6

gotham-contrib

Ports of the Gotham colorscheme for common editors and terminal emulators 🌃
Shell
242
star
7

vim-lengthmatters

Highlight the flooding part of an overly long line 📐
Vim Script
82
star
8

short_maps

⚠️Retired⚠️ library that provided a ~m sigil for ES6-like map destructuring in Elixir.
Elixir
76
star
9

vim-textobj-xmlattr

A vim text object for XML/HTML attributes.
Vim Script
74
star
10

saul

Data validation and conformation library for Elixir.
Elixir
67
star
11

redix_pubsub

Deprecated Redis Pub/Sub client for Elixir. Now built-in into Redix.
Elixir
63
star
12

protohackers_in_elixir

Code for a video series I'm making on solving protohackers.com challenges in Elixir. 📺
Elixir
55
star
13

plug_heartbeat

A plug for responding to heartbeat requests.
Elixir
36
star
14

nimble_lz4

LZ4 compression for Elixir using Rust NIFs. 🗜
Elixir
25
star
15

vim-textobj-erb

A Vim text object for ERB blocks.
Vim Script
20
star
16

dotfiles

My dotfiles 🥑
Shell
19
star
17

from_zero_to_hero_with_elixir

Elixir 101 training. Done by @ericmj and me.
Elixir
19
star
18

convertat

An Elixir library for converting from and to arbitrary bases.
Elixir
17
star
19

workshop-parallel-computation-with-elixir

Elixir
16
star
20

emacs.d

My Emacs config. ⚙️ (buuuuut I don't use Emacs anymore)
Emacs Lisp
15
star
21

training_otp_in_elixir

"OTP in Elixir" training done at Elixir Club Kyiv in ~2020. 👩‍🏫
Elixir
12
star
22

testing_aws_in_elixir

Support code for the blog post "Testing AWS in Elixir" 🐕‍🦺
Elixir
12
star
23

ecto_unix_timestamp

Ecto type for datetimes stored and cast as Unix timestamps. 🕰️
Elixir
11
star
24

small_ints

varint and ZigZag encoding/decoding for Erlang
Erlang
11
star
25

bases

A Ruby gem to convert from and to any base.
Ruby
10
star
26

concurrent_data_processing_in_elixir

Material for the "Concurrent Data Processing in Elixir" training.
10
star
27

connected-web-with-elixir-and-phoenix

Code for my Elixir/Phoenix workshop (currently at FunctionalConf India 2019).
Elixir
5
star
28

whatyouhide.github.io

My personal website. 👨‍💻
SCSS
4
star
29

.vim

Vim configuration. Left to oblivion. ⚰️
Vim Script
3
star
30

.atom

Atom configuration ⚛️ (buuut I don't use Atom anymore)
CSS
2
star
31

rack-domain

Rack middleware for dispatching to Rack apps based on the request domain.
Ruby
2
star
32

vim-tmux-syntax

Vim syntax for tmux configuration files.
Vim Script
2
star
33

advent_of_code_2022

Solutions to Advent of Code 2022, in Rust. 🦀
Rust
1
star
34

toxiproxy

⏰ 🔥 A TCP proxy to simulate network and system conditions for chaos and resiliency testing
Go
1
star
35

setup-beam

Set up your BEAM-based GitHub Actions workflow (Erlang, Elixir, Gleam, ...)
JavaScript
1
star
36

intro-to-git-ingegneria

Git talk @ Univaq.
CSS
1
star
37

whatyouhide

Special repository for my GitHub homepage. 🛋️
1
star