Workflow for interactive application development?

What’s the usual workflow for interactive application development?

My understanding is that the workflow should be:

  1. Create a rebar.config file for the project if needed.

  2. Start an Erlang shell with rebar3 shell.

  3. Repeat as needed:

    • Make changes.

    • Recompile from inside the shell with r3:compile()..

    • Interact with the app from the shell.

  4. Exit the shell with q(). when done, or use Ctrl+c a to abort if stuck.

Do you recommend anything different? Thanks!

there is a library called sync.

it can detect changes in your code, recompile the code and reload the module.

Other than sync already mentioned by nayibor, there’s also rebar3_auto which I use to auto recompile modules.