Difference between revisions of "Web/Cloud"

From HaskellWiki
< Web
Jump to navigation Jump to search
(31 intermediate revisions by 2 users not shown)
Line 8: Line 8:
 
{| class="wikitable"
 
{| class="wikitable"
 
! GHC version:
 
! GHC version:
  +
| [https://hub.docker.com/r/accursoft/ghc 8.6.3]
| 7.6.3 / 7.8.2
 
 
|-
 
|-
 
! Author:
 
! Author:
Line 14: Line 14:
 
|-
 
|-
 
! Home page:
 
! Home page:
| https://github.com/accursoft/Haskell-Cloud
+
| https://github.com/accursoft/haskell-cloud/
 
|-
 
|-
 
! Documentation:
 
! Documentation:
| https://github.com/accursoft/Haskell-Cloud/blob/master/README.md
+
| https://github.com/accursoft/haskell-cloud/blob/master/README.md
 
|}
 
|}
   
 
== Heroku ==
The cartridge comes in several flavours, with just the network package (GHC 7.8.2) or a pre-installed framework (GHC 7.6.3 *):
 
   
 
{| class="wikitable"
 
{| class="wikitable"
  +
! GHC version:
! Framework || Cartridge || QuickStart || Deploy
 
 
| 7.10.3
 
|-
 
|-
  +
! Author:
| network
 
  +
| Joe Nelson
| [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/begriffs/heroku-buildpack-ghc
| [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/begriffs/heroku-buildpack-ghc/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]
 
  +
== Heroku Stack ==
  +
  +
{| class="wikitable"
  +
! GHC version:
  +
| [http://haskellstack.org/ Stack]
 
|-
 
|-
  +
! Author:
| Happstack
 
  +
| Mark Fine
| [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]
 
 
|-
 
|-
  +
! Home page:
| MFlow
 
  +
| https://github.com/mfine/heroku-buildpack-stack
| [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]
 
 
|-
 
|-
  +
! Documentation:
| Scotty
 
  +
| https://github.com/mfine/heroku-buildpack-stack/blob/master/README.md
| [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]
 
 
|}
 
|}
   
  +
== Heroku-Haste ==
<small>* GHC 7.8 requires dynamic libraries for Template Haskell and Quasiquoting. OpenShift gears default to a 1Gb quota, which is insufficient for a full web framework with two copies (dynamic and static) of every library.</small>
 
 
The included template is currently the same for all cartridges (a simple stub server that just lists the installed packages). I'll be happy to include any framework-specific starter projects with the quickstarts - please open an [https://github.com/accursoft/Haskell-Cloud/issues/new issue] with a link to your Github repo.
 
 
== Heroku ==
 
   
 
{| class="wikitable"
 
{| class="wikitable"
Line 67: Line 59:
 
|-
 
|-
 
! Author:
 
! Author:
  +
| Alberto G. Corona
| Brian McKenna
 
 
|-
 
|-
 
! Home page:
 
! Home page:
| https://github.com/puffnfresh/heroku-buildpack-haskell
+
| https://github.com/agocorona/heroku-buildpack-haste
 
|-
 
|-
 
! Documentation:
 
! Documentation:
| https://github.com/puffnfresh/heroku-buildpack-haskell/blob/master/README.md
+
| https://github.com/agocorona/heroku-buildpack-haste/blob/master/README.md
 
|}
 
|}
   
  +
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]
 

Revision as of 08:01, 22 August 2019

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.

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/.