Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression. Learn more →
Top 23 Elixir HTTP Projects
-
You can also use https://github.com/edgurgel/httpoison to write your own API integrations. If there's already a package out there, may as well use it. If not, Elixir makes it easy enough to knock out in an hour or two (unless the API itself is a pain to work with, but that would apply to any language).
-
tesla
The flexible HTTP client library for Elixir, with support for middleware and multiple adapters.
tesla
-
SonarQube
Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.
-
-
However, not every Elixir’s HTTP client supports sending requests using HTTP2 - so we have to search for another option rather than using HTTPoison that we widely use in other projects. We’ve decided to go with Finch, as apart from supporting HTTP2 it also focuses on performance and provides telemetry support out of the box - which we’ve found very useful for tracing and debugging purposes.
-
[1] https://github.com/mtrudel/bandit/blob/main/lib/bandit/websocket/permessage_deflate.ex
-
bypass
Bypass provides a quick way to create a custom plug that can be put in place instead of an actual HTTP server to return prebaked responses to client requests.
Project mention: How to ignore a child of a Supervisor not being able to start during tests? | reddit.com/r/elixir | 2022-06-11In order to do this you may use mock (which is simple to use), mox (they have pretty compelling arguments why not to mock traditionally), or specifically for http requests, bypass.
-
-
InfluxDB
Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.
-
-
Project mention: Squirm - This was the night of the crawling terror! | reddit.com/r/crystal_programming | 2023-05-06
I would say that the usage of Squirm is for crawling purposes and it is a close analogue of https://github.com/elixir-crawly/crawly
-
-
In my opinion, Mock works well for certain types of tests. I usually find myself reaching for it when we need to mock external libraries that we have no control over. For example, let’s say we use an external library to fetch a user’s GitHub profile instead of our custom GithubAPI. Something like this:
-
Hope this will help you in your next project if an exponential backoff is needed, maybe when you are dependent on some service that rate limits requests with PlugAttack as described in this blog post.
-
-
-
-
-
Maxwell
Maxwell is an HTTP client which support for middleware and multiple adapters. (by zhongwencool)
-
-
-
-
-
web_socket
An exploration into a stand-alone library for Plug applications to easily adopt WebSockets.
-
-
ONLYOFFICE
ONLYOFFICE Docs — document collaboration in your environment. Powerful document editing and collaboration in your app or environment. Ultimate security, API and 30+ ready connectors, SaaS or on-premises
Elixir HTTP related posts
- Exponential Backoff with Elixir
- Taming the Time: how to install & develop with XTDB
- An Elixir OAuth 2.0 Client Library
- Anyone using bandit in prod?
- Bandit is a pure Elixir HTTP server for Plug and WebSock applications
- Ask HN: So, what's up with Phoenix (web framework)?
- Phoenix SaaS starter kit?
-
A note from our sponsor - InfluxDB
www.influxdata.com | 1 Jun 2023
Index
What are some of the best open-source HTTP projects in Elixir? This list will help you:
Project | Stars | |
---|---|---|
1 | httpoison | 2,152 |
2 | tesla | 1,841 |
3 | mint | 1,233 |
4 | finch | 1,073 |
5 | bandit | 1,048 |
6 | bypass | 889 |
7 | Crawler | 874 |
8 | httpotion | 729 |
9 | Crawly | 709 |
10 | oauth2 | 699 |
11 | tentacat | 424 |
12 | PlugAttack | 389 |
13 | scrape | 323 |
14 | neuron | 312 |
15 | Ace | 306 |
16 | webdriver | 118 |
17 | Maxwell | 111 |
18 | chaperon | 107 |
19 | river | 81 |
20 | cauldron | 73 |
21 | FakeServer | 71 |
22 | web_socket | 62 |
23 | http_proxy | 58 |