Elixir implementation of the Twilic wire format and session-aware encoder/decoder.
This library's default encode / decode API targets Twilic v2.
- Dynamic encoding/decoding (
encode,decode) - Schema-aware encoding (
encode_with_schema) - Batch encoding (
encode_batch,SessionEncoder) - Native modules under
lib/twilic/
twilic-elixir/
lib/twilic/ # wire, model, codec, session, protocol, v2
test/
docs/
- Elixir 1.19+ and OTP 27+
def deps do
[
{:twilic, git: "https://github.com/twilic/twilic-elixir.git"}
]
endvalue =
Twilic.new_map([
Twilic.entry("id", Twilic.new_u64(1001)),
Twilic.entry("name", Twilic.new_string("alice")),
])
encoded = Twilic.encode(value)
decoded = Twilic.decode(encoded)mix deps.get
mix testSee docs/CONTRIBUTING.md.
.github/workflows/ci.yml—mix testand markdown checks
Mirrors twilic/twilic; ported from twilic-dart.
This project is licensed under the MIT License - see the LICENSE file for details.