reroute alternatives and similar packages
Based on the "Web" category.
Alternatively, view reroute alternatives based on common mentions on social networks and blogs.
-
servant
Main repository for the servant libraries — DSL for describing, serving, querying, mocking, documenting web applications and more! -
haskell-bitmex-rest
swagger-codegen contains a template-driven engine to generate documentation, API clients and server stubs in different languages by parsing your OpenAPI / Swagger definition. -
scotty
Haskell web framework inspired by Ruby's Sinatra, using WAI and Warp (Official Repository) -
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. -
neuron
Future-proof note-taking and publishing based on Zettelkasten (superseded by Emanote: https://github.com/srid/emanote) -
apecs-gloss
a fast, extensible, type driven Haskell ECS framework for games -
haskell-kubernetes
Haskell bindings to the Kubernetes API (via swagger-codegen) -
airship
Helium + Webmachine = Airship. A toolkit for building declarative, RESTful web apps. -
servant-elm
Automatically derive Elm functions to query servant webservices -
digestive-functors
A general way to consume input using applicative functors -
tagsoup
Haskell library for parsing and extracting information from (possibly malformed) HTML/XML documents -
hbro
[Unmaintained] A minimal web-browser written and configured in Haskell. -
backprop
Heterogeneous automatic differentiation ("backpropagation") in Haskell -
kubernetes-client-core
Haskell client for the kubernetes API. A work in progress. -
keera-hails-reactive-htmldom
Keera Hails: Haskell on Rails - Reactive Programming Framework for Interactive Haskell applications -
engine-io
A Haskell server implementation of the Engine.IO and Socket.IO (1.0) protocols -
android-lint-summary
Prettier display of Android Lint issues -
icepeak
Icepeak is a fast JSON document store with push notification support.
Static code analysis for 29 languages.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of reroute or a related project?
README
Spock
Intro
Another Haskell web framework for rapid development. To get started with Spock, check our tutorial or take a look at our example project funblog!
Mailing list
Please join our mailing list at [email protected]
Features
Another Haskell web framework for rapid development: This toolbox provides everything you need to get a quick start into web hacking with haskell:
- fast typesafe routing
- middleware
- json
- sessions
- cookies
- database helper
- csrf-protection
- typesafe contexts
Important Links
Talks
- English: ZuriHac 2016: Spock - Powerful Elegant Web Applications (by Alexander Thiemann)
- English: Spock - Powerful Elegent Web Applications using Haskell (by Alexander Thiemann)
- English: Beginning Web Programming in Haskell (using Spock) (by Ollie Charles)
- German: Moderne typsichere Web-Entwicklung mit Haskell (by Alexander Thiemann)
- German: reroute-talk (by Tim Baumann)
Candy
Extensions
The following Spock extensions exist:
- Background workers for Spock: Spock-worker
- Digestive functors for Spock: Spock-digestive
- Lucid for Spock: Spock-lucid
Works well with Spock
- User management users
- Data validation validate-input
- Blaze bootstrap helpers blaze-bootstrap
- digestive-forms bootstrap helpers digestive-bootstrap
SSL / HTTPS
If you'd like to use your application via HTTPS, there are two options:
- Use nginx/haproxy/... as reverse proxy in front of the Spock application.
- Convert the Spock application to a
wai
-application using thespockAsApp
. Then use thewarp-tls
package to run it.
Notes
Since version 0.11.0.0 Spock drops simple routing in favor of typesafe routing and drops safe actions in favor of the "usual" way of csrf protection with a token.
Since version 0.7.0.0 Spock supports typesafe routing. If you wish to continue using the untyped version of Spock you can Use Web.Spock.Simple
. The implementation of the routing is implemented in a separate haskell package called reroute
.
Since version 0.5.0.0 Spock is no longer built on top of scotty. The design and interface is still influenced by scotty, but the internal implementation differs from scotty's.
Thanks to
- Tim Baumann (lot's of help with typesafe routing)
- Tom Nielsen (much feedback and small improvements)
- ... and all other awesome contributors!
Hacking
Pull requests are welcome! Please consider creating an issue beforehand, so we can discuss what you would like to do. Code should be written in a consistent style throughout the project. Avoid whitespace that is sensible to conflicts. (E.g. alignment of =
signs in functions definitions)
Note that by sending a pull request you agree that your contribution can be released under the BSD3 License as part of the Spock
package or related packages.
Misc
Officially Supported GHC Versions
- 8.10.7
- 8.8.4
License
Released under the BSD3 license. (c) 2013 - 2021 Alexander Thiemann
*Note that all licence references and agreements mentioned in the reroute README section above
are relevant to that project's source code only.