Web/Cloud: Difference between revisions

From HaskellWiki
< Web
(Heroku-Haste)
(Added IHP Cloud)
 
(27 intermediate revisions by 2 users not shown)
Line 4: Line 4:
[http://en.wikipedia.org/wiki/Platform_as_a_service PaaS] (platform as a service) cloud providers generally limit you to a fixed technology stack. However, [https://www.openshift.com/developers/download-cartridges OpenShift] and [https://devcenter.heroku.com/articles/buildpacks Heroku] allow third-party extensions, which can be used to support Haskell.
[http://en.wikipedia.org/wiki/Platform_as_a_service PaaS] (platform as a service) cloud providers generally limit you to a fixed technology stack. However, [https://www.openshift.com/developers/download-cartridges OpenShift] and [https://devcenter.heroku.com/articles/buildpacks Heroku] allow third-party extensions, which can be used to support Haskell.


== OpenShift ==
== IHP Cloud ==


{| class="wikitable"
{| class="wikitable"
! GHC version:
! GHC version:
7.8.3
[https://hub.docker.com/r/accursoft/ghc 8.10.3]
|-
|-
! Author:
! Author:
Gideon Sireling
digitally induced GmbH
|-
|-
! Home page:
! Home page:
http://code.accursoft.com/haskell-cloud/
https://ihpcloud.com/
|-
|-
! Documentation:
! Documentation:
http://code.accursoft.com/haskell-cloud/src/tip/README.md
https://ihp.digitallyinduced.com/Guide/deployment.html
|}
|}


The cartridge comes in several flavours, with just the network package or a pre-installed framework:
== OpenShift ==


{| class="wikitable"
{| class="wikitable"
! Framework || Cartridge || QuickStart || Deploy || QuickStart Template
! GHC version:
| [https://hub.docker.com/r/accursoft/ghc 8.6.3]
|-
|-
| network
! Author:
| [http://www.accursoft.com/cartridges/network.yml manifest]
| Gideon Sireling
| [https://www.openshift.com/quickstarts/haskell quickstart]
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fnetwork.yml deploy]
|
|-
|-
| Yesod
! Home page:
| [http://www.accursoft.com/cartridges/yesod.yml manifest]
| https://github.com/accursoft/haskell-cloud/
| [https://www.openshift.com/quickstarts/yesod quickstart]
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fyesod.yml deploy]
| ✓
|-
|-
| Snap
! Documentation:
| [http://www.accursoft.com/cartridges/snap.yml manifest]
| https://github.com/accursoft/haskell-cloud/blob/master/README.md
| [https://www.openshift.com/quickstarts/snap quickstart]
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fsnap.yml deploy]
| ✗
|-
| Happstack
| [http://www.accursoft.com/cartridges/happstack.yml manifest]
| [https://www.openshift.com/quickstarts/happstack quickstart]
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fhappstack.yml deploy]
| ✗
|-
| MFlow
| [http://www.accursoft.com/cartridges/mflow.yml manifest]
| [https://www.openshift.com/quickstarts/mflow quickstart]
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fmflow.yml deploy]
| ✗
|-
| Scotty
| [http://www.accursoft.com/cartridges/scotty.yml manifest]
| [https://www.openshift.com/quickstarts/scotty quickstart]
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fscotty.yml deploy]
| ✗
|}
|}
Frameworks that don't have their own quickstart template use the network template (also included in every cartridge). I'll be happy to include any contributed framework-specific templates - please open an [http://code.accursoft.com/haskell-cloud/issues/new issue] with a link to your Github repo.


== Heroku ==
== Heroku ==
Line 68: Line 40:
{| class="wikitable"
{| class="wikitable"
! GHC version:
! GHC version:
|  7.8.2
|  7.10.3
|-
|-
! Author:
! Author:
Line 78: Line 50:
! Documentation:
! Documentation:
|  https://github.com/begriffs/heroku-buildpack-ghc/blob/master/README.md
|  https://github.com/begriffs/heroku-buildpack-ghc/blob/master/README.md
|}
== Heroku Stack ==
{| class="wikitable"
! GHC version:
|  [http://haskellstack.org/ Stack]
|-
! Author:
|  Mark Fine
|-
! Home page:
|  https://github.com/mfine/heroku-buildpack-stack
|-
! Documentation:
|  https://github.com/mfine/heroku-buildpack-stack/blob/master/README.md
|}
|}


Line 97: Line 85:


Heroku buildpack for [https://github.com/agocorona/tryhplay tryhplay], incorporating [http://haste-lang.org/ Haste] and [https://github.com/agocorona/hplayground HPlayground]. Demo at http://tryplayg.herokuapp.com/.
Heroku buildpack for [https://github.com/agocorona/tryhplay tryhplay], incorporating [http://haste-lang.org/ Haste] and [https://github.com/agocorona/hplayground HPlayground]. Demo at http://tryplayg.herokuapp.com/.
== See also ==
* [http://docs.dotcloud.com/services/custom/ dotCloud]
* [https://www.stormcloudsystems.com/ Storm Cloud Systems]
* [https://www.fpcomplete.com/ FP Haskell Center]

Latest revision as of 11:39, 30 December 2020

Haskell Web Development

Software:
Servers - Libraries - Frameworks
Deploy - Cloud
Interfaces to frameworks
Databases and Persistence
Testing and Verification
Content Management

Community & Research:
Forums and Discussion
Literature (research, talks and blogs)
Existing Haskell web applications
Ongoing projects and ideas

PaaS (platform as a service) cloud providers generally limit you to a fixed technology stack. However, OpenShift and Heroku allow third-party extensions, which can be used to support Haskell.

IHP Cloud

GHC version: 8.10.3
Author: digitally induced GmbH
Home page: https://ihpcloud.com/
Documentation: https://ihp.digitallyinduced.com/Guide/deployment.html

OpenShift

GHC version: 8.6.3
Author: Gideon Sireling
Home page: https://github.com/accursoft/haskell-cloud/
Documentation: https://github.com/accursoft/haskell-cloud/blob/master/README.md

Heroku

GHC version: 7.10.3
Author: Joe Nelson
Home page: https://github.com/begriffs/heroku-buildpack-ghc
Documentation: https://github.com/begriffs/heroku-buildpack-ghc/blob/master/README.md

Heroku Stack

GHC version: Stack
Author: Mark Fine
Home page: https://github.com/mfine/heroku-buildpack-stack
Documentation: https://github.com/mfine/heroku-buildpack-stack/blob/master/README.md

Heroku-Haste

GHC version: 7.4.1
Author: Alberto G. Corona
Home page: https://github.com/agocorona/heroku-buildpack-haste
Documentation: https://github.com/agocorona/heroku-buildpack-haste/blob/master/README.md

Heroku buildpack for tryhplay, incorporating Haste and HPlayground. Demo at http://tryplayg.herokuapp.com/.