JaniHur
Elixir for applications providing and consuming APIs over network
Hello Community,
I’m Elixir, but not a functional programming, beginner (read Elixir in Action already once but still here :).
Is Elixir and BEAM/OTP platform suitable for applications providing and consuming APIs over network?
My use case would be an application implementing a OpenAPI specification based (request-reply) APIs. The application logic would be mainly to query data from other network APIs and (relational) databases and transform the (JSON) data in arbitrary ways. Also Kafka connectivity is required.
Any hints for a beginner for suitable libraries/frameworks/existing tutorials covering this scenario? I’m a bit confused about the ecosystem atm and I’m assuming vanilla Elixir is not enough, right?
Marked As Solved
derpycoder
Sure,
It certainly is, See: YouTube videos depicting its usage!!
Vanilla Elixir is great, if you want to go that route, but it will take a while.
However since you are beginner, I would suggest you use something like Phoenix Framework, along with some libraries mentioned below:
Phoenix Framework can generate API endpoints, using generators. See: mix phx.gen.json & Views and Templates
https://github.com/phoenixframework/phoenix
You can use a beginner friendly, yet powerful HTTP client:
https://github.com/wojtekmach/req
For Kafka connection, you can use:
https://github.com/dashbitco/broadway
To generate OpenAPI docs:
https://github.com/xerions/phoenix_swagger
Tutorials:
Generate API Documentation Effortlessly from your Phoenix/Elixir code
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance








