README.md
# Nbpm
> Name-Based Port Mapper
[](https://github.com/pertsevds/nbpm/actions/workflows/ci.yml)
[](https://coveralls.io/github/pertsevds/nbpm?branch=2-usage-docs)
[](https://hex.pm/packages/nbpm)
[](https://hex.pm/packages/nbpm)
[](https://hexdocs.pm/nbpm)
`Nbpm` is a lightweight Elixir module that provides a simplified implementation of the Erlang Port Mapper Daemon (EPMD) protocol. It enables basic functionality for mapping Erlang node names to network ports. This module is designed as a convenient alternative to a full EPMD implementation, making it easier to facilitate communication between Erlang nodes.
## Features
- `Mix.Release` compatibility.
- Ability to specify port number in the node name.
- Hash-Based Port from node name.
## Installation
To use Nbpm in your Elixir project, add it as a dependency in your `mix.exs` file:
```elixir
def deps do
[
{:nbpm, "~> 0.2.0"}
]
end
```
Execute `mix nbpm.install`
This will add `-start_epmd false -epmd_module Elixir.Nbpm` to `ELIXIR_ERL_OPTIONS` in files `rel/env.sh.eex` and `rel/env.bat.eex`
## TODO
Installation to global: https://github.com/pertsevds/nbpm/issues/4
## Documentation
https://hexdocs.pm/nbpm