servant
wai-conduit
Our great sponsors
- Revelo Payroll - Free Global Payroll designed for tech teams
- InfluxDB - Collect and Analyze Billions of Data Points in Real Time
- Onboard AI - Learn any GitHub repo in 59 seconds
- SonarLint - Clean code begins in your IDE with SonarLint
servant | wai-conduit | |
---|---|---|
15 | 10 | |
1,736 | 790 | |
0.3% | 0.4% | |
7.1 | 0.0 | |
3 days ago | 19 days ago | |
Haskell | Haskell | |
BSD 3-clause "New" or "Revised" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
servant
-
Monthly Hask Anything (November 2022)
If you don't like this style, the usual alternative is to change mkDualAuthHandler to take two additional arguments, Proxy tag0 and Proxy tag1 (as e.g. lots of Servant functions do, for historical reasons).
-
How introduce `ResourceT` into my stack
Dunno if this is helpful, but I found this github issue about ResourceT and servant https://github.com/haskell-servant/servant/issues/1345
-
Introduction to Doctests in Haskell
And what about the cabal repl --with-compiler=doctest, which was added recently, in doctest v0.20? I recently submitted a PR for Servant to use this in place of GHC environment files, because it seems less finicky to me. Was this a bad idea?
-
Generate Typescript from Servant API
I asked a somewhat relevant question recently. Maybe you'll find this discussion somewhat helpful: https://github.com/haskell-servant/servant/issues/1547; two packages were talked about. One of the folks from Well Typed replied, and said they tried it recently (and worked fine).
-
Named Routes in Servant
Hey, is it possible this could solve the quadratic compile times issue for Servant routes? I was under the impression the slowdown was related to GHC being slow processing giant types, so maybe breaking the API down into records is just the thing...
You'll actually have to use the unreleased servant-auth-server from master (see here for details). I need to push a release :-)
-
Why Do We Need Transpilation into JavaScript?
We use servant library that allows us to describe API at the type level and check during the compilation whether both the server handlers and the client functions use correct parameters of the required types and correspond to the current API version (if you forgot to change the client function at the frontend, it just won’t be built).
-
Saw a Tweet about Haskell+Servant being replaced with NodeJS in a project due to compile times - will compile times ever get better?
Since nobody has mentioned it yet, there is an outstanding issue about quadratic compile times in Servant.
-
Beginner friendly Haskell Open Source projects?
Web frameworks: Yesod, Scotty, Servant
wai-conduit
-
Crypton is forked from cryptonite with the original authors permission
found some context https://github.com/yesodweb/wai/pull/931
-
Rust's Poor Composability
Yes. Not because of the developer, but because of how extremely flexible and dynamic the Lisp-family languages are. The power and joy of Lisp is in how it's almost a meta-language, so every project can become its own EDSL. The most famous (infamous?) example of this is Vacietis[2], which is a Common Lisp library that allows C code to be imported directly(!!).
[0] IIRC the Yesod framework's Warp does well on benchmarks, and when you look at code like https://github.com/yesodweb/wai/blob/master/warp/Network/Wai... you can see the lengths they had to go through to work around the choice of implementation language.
[1] Go has a garbage collector, but exposes the stack/heap distinction more directly than Haskell, so it's easier to write allocation-free code in hot paths.
-
I replaced all our blog thumbnails using DALL·E 2 for $45: here’s what I learned
I switched backends a bunch of times because everything I tried (Go stdlib HTTP, Tornado, etc.) kept getting taken out whenever I would hit the front page, either due to CPU overload or some sort of resource leak. I ended up using Warp+Wai+Servant (https://github.com/yesodweb/wai) and it has been smooth sailing since then off my $3/mo VPS. It can take thousands of req/sec without flinching (which is higher than what you see from top of HN - that maxes out at a few hundred req/s).
My $3/mo vultr box can handle HN loads easily when using a fast backend (I've settled on https://github.com/yesodweb/wai based apps - the only thing that has worked well for me so far).
-
[ANNOUNCE] GHC 9.2.2 is now available!
What kind of metrics do you derive "ton of stuff" from? It seems like the largest blocker is Cryptonite. It's unreasonable to let a handful of packages keep back Nightly. You can now run Warp without it. How does your list of essential blockers for 9.2 look like?
- List of upcoming breaking changes
-
simple backend like express or oak in js world
Is this the correct repo? https://github.com/yesodweb/wai
No, Wai is the common abstraction, sort of like connect. Warp is one (only AFAIK) server implementation of it. Both Wai and Warp are developed along side with Yesod, you can find their source code here https://github.com/yesodweb/wai
-
Beginner friendly Haskell Open Source projects?
WAI
What are some alternatives?
servant-ts - See the docs and live playground here
graphql - Haskell GraphQL implementation
loli
swagger-petstore - swagger-codegen contains a template-driven engine to generate documentation, API clients and server stubs in different languages by parsing your OpenAPI / Swagger definition.
gc-monitoring-wai - a wai application to show `GHC.Stats.GCStats`
servant-pagination
servant-blaze
attoparsec-conduit - A streaming data library
servant-github - servant types to access the GitHub API v3
tar-conduit - Conduit based tar extraction mechanism
open-browser - Haskell library for opening the web browser.
coffeescript - Unfancy JavaScript