5HT/active

♾️ ACTIVE: Filesystem Activities

Erlang

67

126 commits

updated Jun 1, 2026

See the code

README

ACTIVE: Continuous Compilation

Actions Status Build Status Hex pm

Active is a sync replacement that uses native file-system OS async listeners to compile and reload Erlang files, DTL templates and other files. It acts as FS subscriber under supervision and uses mad, IEx.Helpers.c or you can add your own compiler, like rebar3 or make.

Listen Folders

One-level

app(App,["ebin",Module|_]) -> load_ebin(App,Module);
app(App,["priv"|_]) -> compile(App);
app(App,["src"|_]) -> compile(App);
app(_,_)-> ok.

Two-level

otp(["deps",App|Rest]) -> app(App,Rest);
otp(["apps",App|Rest]) -> app(App,Rest);
otp([Some|Path]) -> app(top(),[Some|Path]);
otp(_) -> ok.

Usage

On Mac/Linux/Windows just include into your rebar.config:

{active, ".*", {git, "https://github.com/synrc/active.git", {tag,"1.9"}}}

NOTE: on Linux please install inotify-tools.

Credits

  • Maxim Sokhatsky
  • Vladimir Kirillov
  • Oleksandr Palchikovsky (Elixir)

OM A HUM

mad
mix

Contributors

5HT

111 commits

Lol4t0

7 commits

m-2k

2 commits

Revent

2 commits

5HT/active

♾️ ACTIVE: Filesystem Activities

Erlang

67

126 commits

updated Jun 1, 2026

See the code

README

ACTIVE: Continuous Compilation

Actions Status Build Status Hex pm

Active is a sync replacement that uses native file-system OS async listeners to compile and reload Erlang files, DTL templates and other files. It acts as FS subscriber under supervision and uses mad, IEx.Helpers.c or you can add your own compiler, like rebar3 or make.

Listen Folders

One-level

app(App,["ebin",Module|_]) -> load_ebin(App,Module);
app(App,["priv"|_]) -> compile(App);
app(App,["src"|_]) -> compile(App);
app(_,_)-> ok.

Two-level

otp(["deps",App|Rest]) -> app(App,Rest);
otp(["apps",App|Rest]) -> app(App,Rest);
otp([Some|Path]) -> app(top(),[Some|Path]);
otp(_) -> ok.

Usage

On Mac/Linux/Windows just include into your rebar.config:

{active, ".*", {git, "https://github.com/synrc/active.git", {tag,"1.9"}}}

NOTE: on Linux please install inotify-tools.

Credits

  • Maxim Sokhatsky
  • Vladimir Kirillov
  • Oleksandr Palchikovsky (Elixir)

OM A HUM

mad
mix

Contributors

5HT

111 commits

Lol4t0

7 commits

m-2k

2 commits

Revent

2 commits

Languages

Erlang

69.2%

HTML

24.6%

Elixir

6.2%