Difference between revisions of "Web/Cloud"

From HaskellWiki
< Web
Jump to navigation Jump to search
(Added IHP Cloud)
 
(24 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 ==
 
'''Warning''': The cartridges are currently liable to fail on small (free) gears due to cabal-install issue [https://github.com/haskell/cabal/issues/2396 #2396].
 
   
 
{| class="wikitable"
 
{| class="wikitable"
 
! GHC version:
 
! GHC version:
  +
| [https://hub.docker.com/r/accursoft/ghc 8.10.3]
| 7.8.4
 
 
|-
 
|-
 
! Author:
 
! Author:
  +
| digitally induced GmbH
| Gideon Sireling
 
 
|-
 
|-
 
! Home page:
 
! Home page:
| http://code.accursoft.com/haskell-cloud/
+
| https://ihpcloud.com/
 
|-
 
|-
 
! Documentation:
 
! Documentation:
  +
| https://ihp.digitallyinduced.com/Guide/deployment.html
| http://code.accursoft.com/haskell-cloud/src/tip/README.md
 
 
|}
 
|}
   
  +
== OpenShift ==
The cartridge comes in several flavours, with just the network package or a pre-installed framework:
 
   
 
{| class="wikitable"
 
{| class="wikitable"
  +
! GHC version:
! Framework || Cartridge || QuickStart || Deploy || QuickStart Template
 
  +
| [https://hub.docker.com/r/accursoft/ghc 8.6.3]
 
|-
 
|-
  +
! Author:
| network
 
 
| Gideon Sireling
| [http://www.accursoft.com/cartridges/network.yml manifest]
 
| [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]
 
| ✓
 
 
|-
 
|-
  +
! Home page:
| Yesod
 
  +
| https://github.com/accursoft/haskell-cloud/
| [http://www.accursoft.com/cartridges/yesod.yml manifest]
 
| [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]
 
| ✓
 
 
|-
 
|-
  +
! Documentation:
| Snap
 
 
| https://github.com/accursoft/haskell-cloud/blob/master/README.md
| [http://www.accursoft.com/cartridges/snap.yml manifest]
 
| [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/issue] with a link to your Github repo.
 
   
 
== Heroku ==
 
== Heroku ==
Line 70: Line 40:
 
{| class="wikitable"
 
{| class="wikitable"
 
! GHC version:
 
! GHC version:
| 7.8.2
+
| 7.10.3
 
|-
 
|-
 
! Author:
 
! Author:
Line 80: 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 99: 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/.