From bd9586148c38800e48a9b6d1c1a71d9401ac1b2e Mon Sep 17 00:00:00 2001 From: Joscha Date: Tue, 24 Nov 2020 22:56:50 +0000 Subject: [PATCH] Make simple yesod project --- app/Main.hs | 6 +++++- package.yaml | 1 + props.cabal | 6 +++--- src/Props.hs | 19 +++++++++++++++++-- 4 files changed, 26 insertions(+), 6 deletions(-) diff --git a/app/Main.hs b/app/Main.hs index d94efcc..6eb0b42 100644 --- a/app/Main.hs +++ b/app/Main.hs @@ -1,6 +1,10 @@ +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE TypeFamilies #-} + module Main where import Props +import Yesod main :: IO () -main = putStrLn helloWorld +main = warp 3000 App diff --git a/package.yaml b/package.yaml index d1f1575..83a8c65 100644 --- a/package.yaml +++ b/package.yaml @@ -13,6 +13,7 @@ extra-doc-files: dependencies: - base >= 4.7 && < 5 +- yesod library: source-dirs: src diff --git a/props.cabal b/props.cabal index 8063c21..6e9ceba 100644 --- a/props.cabal +++ b/props.cabal @@ -1,10 +1,8 @@ cabal-version: 1.18 --- This file has been generated from package.yaml by hpack version 0.33.0. +-- This file has been generated from package.yaml by hpack version 0.34.2. -- -- see: https://github.com/sol/hpack --- --- hash: 057a536ac3d0fd40b3122084eee53201158527bbcd0dbac7cec33d8fd06cf208 name: props version: 0.1.0.0 @@ -29,6 +27,7 @@ library src build-depends: base >=4.7 && <5 + , yesod default-language: Haskell2010 executable props @@ -41,4 +40,5 @@ executable props build-depends: base >=4.7 && <5 , props + , yesod default-language: Haskell2010 diff --git a/src/Props.hs b/src/Props.hs index 8caf1dc..c4325e1 100644 --- a/src/Props.hs +++ b/src/Props.hs @@ -1,4 +1,19 @@ +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE QuasiQuotes #-} +{-# LANGUAGE TemplateHaskell #-} +{-# LANGUAGE TypeFamilies #-} + module Props where -helloWorld :: String -helloWorld = "Hello World!" +import Yesod + +data App = App + +mkYesod "App" [parseRoutes| +/ HomeR GET +|] + +instance Yesod App + +getHomeR :: Handler Html +getHomeR = defaultLayout [whamlet|Hello World!|]