Difference between revisions of "Web/Cloud"

From HaskellWiki
< Web
Jump to navigation Jump to search
(14 intermediate revisions by 2 users not shown)
Line 8: Line 8:
 
{| class="wikitable"
 
{| class="wikitable"
 
! GHC version:
 
! GHC version:
| 7.8.3
+
| 7.10.3
 
|-
 
|-
 
! Author:
 
! Author:
Line 14: Line 14:
 
|-
 
|-
 
! Home page:
 
! Home page:
| http://code.accursoft.com/haskell-cloud/
+
| https://bitbucket.org/accursoft/haskell-cloud/
 
|-
 
|-
 
! Documentation:
 
! Documentation:
| http://code.accursoft.com/haskell-cloud/src/tip/README.md
+
| https://bitbucket.org/accursoft/haskell-cloud/src/tip/README.md
 
|}
 
|}
   
The cartridge comes in several flavours, with just the network package or a pre-installed framework:
+
The cartridge comes in several flavours, with just the network and text packages or a pre-installed framework:
   
 
{| class="wikitable"
 
{| class="wikitable"
! Framework || Cartridge || QuickStart || Deploy || QuickStart Template
+
! Framework || Cartridge || QuickStart || Deploy
 
|-
 
|-
 
| network
 
| network
Line 29: Line 29:
 
| [https://www.openshift.com/quickstarts/haskell quickstart]
 
| [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]
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fnetwork.yml deploy]
| ✓
 
 
|-
 
|-
 
| Yesod
 
| Yesod
Line 35: Line 34:
 
| [https://www.openshift.com/quickstarts/yesod quickstart]
 
| [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]
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fyesod.yml deploy]
| ✓
 
 
|-
 
|-
 
| Snap
 
| Snap
Line 41: Line 39:
 
| [https://www.openshift.com/quickstarts/snap quickstart]
 
| [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]
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fsnap.yml deploy]
| ✗
 
 
|-
 
|-
 
| Happstack
 
| Happstack
Line 47: Line 44:
 
| [https://www.openshift.com/quickstarts/happstack quickstart]
 
| [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]
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fhappstack.yml deploy]
| ✗
 
 
|-
 
|-
 
| MFlow
 
| MFlow
Line 53: Line 49:
 
| [https://www.openshift.com/quickstarts/mflow quickstart]
 
| [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]
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fmflow.yml deploy]
| ✗
 
 
|-
 
|-
 
| Scotty
 
| Scotty
Line 59: Line 54:
 
| [https://www.openshift.com/quickstarts/scotty quickstart]
 
| [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]
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fscotty.yml deploy]
| ✗
 
 
|}
 
|}
   
  +
<code>cabal update</code> is likely to exceed the memory limit on small (free) gears due to [https://github.com/haskell/cabal/issues/2396 cabal issue #2396].
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 ==
  +
  +
{| class="wikitable"
  +
! GHC version:
  +
| 7.8.2
  +
|-
  +
! 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-Haste ==
   
 
{| class="wikitable"
 
{| class="wikitable"
Line 71: Line 81:
 
|-
 
|-
 
! 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 ==
 
== See also ==
   
* [http://docs.dotcloud.com/services/custom/ dotCloud]
+
* [https://www.fpcomplete.com/business/fp-haskell-center/ FP Haskell Center]
* [https://www.stormcloudsystems.com/ Storm Cloud Systems]
 
* [https://www.fpcomplete.com/ FP Haskell Center]
 

Revision as of 08:45, 14 December 2015

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: 7.10.3
Author: Gideon Sireling
Home page: https://bitbucket.org/accursoft/haskell-cloud/
Documentation: https://bitbucket.org/accursoft/haskell-cloud/src/tip/README.md

The cartridge comes in several flavours, with just the network and text packages or a pre-installed framework:

Framework Cartridge QuickStart Deploy
network manifest quickstart deploy
Yesod manifest quickstart deploy
Snap manifest quickstart deploy
Happstack manifest quickstart deploy
MFlow manifest quickstart deploy
Scotty manifest quickstart deploy

cabal update is likely to exceed the memory limit on small (free) gears due to cabal issue #2396.

Heroku

GHC version: 7.8.2
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-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/.

See also