diff options
author | Joris | 2019-05-01 15:52:32 +0200 |
---|---|---|
committer | Joris | 2019-05-01 17:11:02 +0200 |
commit | 23f04635cc26e1b0553088f28553f518488a9fc8 (patch) | |
tree | 97037643bab24564046ce4aba90481e3b92a15d3 /src/Design | |
parent | 0fe906ae7453aa684e998bbcc7a78b62d84f0206 (diff) |
Setup personal page with Hakyll
Diffstat (limited to 'src/Design')
-rw-r--r-- | src/Design/Color.hs | 27 | ||||
-rw-r--r-- | src/Design/Global.hs | 66 | ||||
-rw-r--r-- | src/Design/Header.hs | 56 | ||||
-rw-r--r-- | src/Design/Media.hs | 36 | ||||
-rw-r--r-- | src/Design/Name.hs | 15 | ||||
-rw-r--r-- | src/Design/NotFound.hs | 20 | ||||
-rw-r--r-- | src/Design/Projects.hs | 51 | ||||
-rw-r--r-- | src/Design/Resume.hs | 125 | ||||
-rw-r--r-- | src/Design/Size.hs | 28 |
9 files changed, 0 insertions, 424 deletions
diff --git a/src/Design/Color.hs b/src/Design/Color.hs deleted file mode 100644 index bbe20c4..0000000 --- a/src/Design/Color.hs +++ /dev/null @@ -1,27 +0,0 @@ -module Design.Color where - -import qualified Clay.Color as C - -white :: C.Color -white = C.white - -red :: C.Color -red = C.rgb 170 57 57 - -orange :: C.Color -orange = C.rgb 182 119 25 - -green :: C.Color -green = C.rgb 0 93 0 - -blue :: C.Color -blue = C.rgb 79 182 187 - -black :: C.Color -black = C.rgb 0 0 0 - -link :: C.Color -link = blue C.-. 70 - -gray :: C.Color -gray = C.rgb 100 100 100 diff --git a/src/Design/Global.hs b/src/Design/Global.hs deleted file mode 100644 index 379d612..0000000 --- a/src/Design/Global.hs +++ /dev/null @@ -1,66 +0,0 @@ -{-# LANGUAGE OverloadedStrings #-} - -module Design.Global - ( compactDesign - ) where - -import qualified Data.Text.Lazy as T -import Data.Monoid ((<>)) - -import Clay - -import qualified Design.Color as Color -import qualified Design.Media as Media -import Design.Header (headerCss) -import Design.Resume (resumeCss) -import Design.Projects (projectsCss) -import Design.NotFound (notFoundCss) - -compactDesign :: T.Text -compactDesign = renderWith compact [] $ global - -global :: Css -global = - body ? do - color Color.black - marginBottom (px 40) - Media.mobile $ fontSize (px 16) - Media.tabletDesktop $ fontSize (px 18) - - h1 ? do - fontFamily [] [monospace] - fontWeight bold - color Color.red - - Media.mobile $ do - lineHeight (px 30) - fontSize (px 22) - marginBottom (px 20) - marginTop (px 35) - - Media.tablet $ do - lineHeight (px 40) - fontSize (px 27) - marginBottom (px 35) - marginTop (px 45) - - Media.desktop $ do - lineHeight (px 50) - fontSize (px 30) - marginBottom (px 40) - marginTop (px 55) - - a ? do - textDecoration none - color Color.link - transition "color" (sec 0.3) easeOut (sec 0) - focus & outline solid (px 0) Color.white - - (a # hover) <> (a # focus) ? do - textDecoration underline - color Color.blue - - headerCss - resumeCss - projectsCss - notFoundCss diff --git a/src/Design/Header.hs b/src/Design/Header.hs deleted file mode 100644 index d2bbace..0000000 --- a/src/Design/Header.hs +++ /dev/null @@ -1,56 +0,0 @@ -{-# LANGUAGE OverloadedStrings #-} - -module Design.Header - ( headerCss - ) where - -import Data.Monoid ((<>)) - -import Clay -import Clay.Display (displayTable) - -import qualified Design.Color as Color -import qualified Design.Media as Media - -headerCss :: Css -headerCss = do - ".header" ? do - backgroundColor Color.red - color Color.white - fontSize (px 28) - - ul ? do - width (pct 100) - display displayTable - "table-layout" -: "fixed" - - li ? do - display tableCell - - a ? do - display block - height (em 3) - lineHeight (em 3) - textDecoration none - padding (px 0) (px 0) (px 0) (px 0) - textAlign (alignSide sideCenter) - color Color.white - textTransform capitalize - transition "background-color" (ms 500) ease (sec 0) - - i ? marginRight (em 0.5) - - Media.mobile $ do - i ? display none - fontSize (em 0.6) - - Media.tablet $ fontSize (em 0.8) - - (a # hover <> a # focus <> a # ".currentHeader") ? do - backgroundColor Color.red - borderBottomStyle solid - borderBottomColor (Color.red +. 40) - - Media.mobile $ borderBottomWidth (px 6) - Media.tablet $ borderBottomWidth (px 8) - Media.desktop $ borderBottomWidth (px 10) diff --git a/src/Design/Media.hs b/src/Design/Media.hs deleted file mode 100644 index 77220ee..0000000 --- a/src/Design/Media.hs +++ /dev/null @@ -1,36 +0,0 @@ -module Design.Media - ( mobile - , mobileTablet - , tablet - , tabletDesktop - , desktop - ) where - -import Clay hiding (query) -import qualified Clay -import Clay.Stylesheet (Feature) -import qualified Clay.Media as Media - -mobile :: Css -> Css -mobile = query [Media.maxWidth mobileTabletLimit] - -mobileTablet :: Css -> Css -mobileTablet = query [Media.maxWidth tabletDesktopLimit] - -tablet :: Css -> Css -tablet = query [Media.minWidth mobileTabletLimit, Media.maxWidth tabletDesktopLimit] - -tabletDesktop :: Css -> Css -tabletDesktop = query [Media.minWidth mobileTabletLimit] - -desktop :: Css -> Css -desktop = query [Media.minWidth tabletDesktopLimit] - -query :: [Feature] -> Css -> Css -query = Clay.query Media.screen - -mobileTabletLimit :: Size LengthUnit -mobileTabletLimit = (px 520) - -tabletDesktopLimit :: Size LengthUnit -tabletDesktopLimit = (px 950) diff --git a/src/Design/Name.hs b/src/Design/Name.hs deleted file mode 100644 index 84c91fb..0000000 --- a/src/Design/Name.hs +++ /dev/null @@ -1,15 +0,0 @@ -{-# LANGUAGE OverloadedStrings #-} - -module Design.Name - ( nameCss - ) where - -import Clay - -nameCss :: Css -nameCss = do - fontWeight bold - letterSpacing (px 10) - margin (px 100) (px 0) (px 80) (px 0) - lineHeight (em 1.2) - fontSize (px 48) diff --git a/src/Design/NotFound.hs b/src/Design/NotFound.hs deleted file mode 100644 index ee8a0af..0000000 --- a/src/Design/NotFound.hs +++ /dev/null @@ -1,20 +0,0 @@ -{-# LANGUAGE OverloadedStrings #-} - -module Design.NotFound - ( notFoundCss - ) where - -import Clay - -notFoundCss :: Css -notFoundCss = - - ".notFoundPage" ? do - - h1 ? do - fontSize (px 40) - fontWeight bold - margin (px 20) (px 20) (px 20) (px 20) - - p ? - margin (px 20) (px 20) (px 20) (px 20) diff --git a/src/Design/Projects.hs b/src/Design/Projects.hs deleted file mode 100644 index 311b7f8..0000000 --- a/src/Design/Projects.hs +++ /dev/null @@ -1,51 +0,0 @@ -{-# LANGUAGE OverloadedStrings #-} - -module Design.Projects - ( projectsCss - ) where - -import Prelude hiding ((**)) - -import Data.Monoid ((<>)) - -import Clay -import qualified Clay.Flexbox as CF - -import qualified Design.Color as Color -import qualified Design.Media as Media -import qualified Design.Size as Size - -projectsCss :: Css -projectsCss = - ".project" ? do - margin (pct 0) (pct 10) (pct 0) (pct 10) - - h1 ? ".separator" ? color Color.black - - ".body" ? do - Size.indentation - - ".technologies" <> ".pageLink" ? do - i ? marginRight (em 0.5) - Size.lineHeight - marginBottom (px 10) - - ".technologies" ? do - Media.mobile $ fontSize (pct 90) - ul ? do - display flex - flexWrap CF.wrap - li ? do - backgroundColor Color.orange - color Color.white - borderRadius (px 2) (px 2) (px 2) (px 2) - margin (px 0) (px 10) (px 5) (px 0) - ":last-child:after" & marginRight (px 0) - - Media.desktop $ padding (px 0) (px 10) (px 0) (px 10) - Media.mobileTablet $ padding (px 0) (px 5) (px 0) (px 5) - - ".description" ? do - Size.lineHeight - marginTop (px 10) - Media.desktop $ width (pct 50) diff --git a/src/Design/Resume.hs b/src/Design/Resume.hs deleted file mode 100644 index d668987..0000000 --- a/src/Design/Resume.hs +++ /dev/null @@ -1,125 +0,0 @@ -{-# LANGUAGE OverloadedStrings #-} - -module Design.Resume - ( resumeCss - ) where - -import Prelude hiding ((**)) - -import Clay -import qualified Clay.Flexbox as CF - -import qualified Design.Color as Color -import qualified Design.Media as Media -import qualified Design.Size as Size - -resumeCss :: Css -resumeCss = - ".section" ? do - position relative - margin (pct 0) (pct 10) (pct 0) (pct 10) - - h1 ? textTransform capitalize - - ".identity" ? do - ".mail" <> ".git" ? do - Size.indentation - i ? marginRight (em 0.5) - - Media.mobile $ do - fontSize (px 14) - marginBottom (px 15) - - Media.tablet $ do - fontSize (px 18) - marginBottom (px 25) - - Media.desktop $ do - fontSize (px 20) - marginBottom (px 30) - - ".pdf" ? do - position absolute - right (px 0) - top (px 0) - color Color.red - transition "all" (ms 100) ease (sec 0) - i ? marginRight (px 0) - hover & transform (scale 1.2 1.2) - - Media.mobile $ do - lineHeight (px 30) - height (px 30) - fontSize (px 20) - - Media.tablet $ do - lineHeight (px 40) - height (px 40) - fontSize (px 30) - - Media.desktop $ do - lineHeight (px 50) - height (px 50) - fontSize (px 40) - - ".item" ? do - marginBottom (px 40) - Size.indentation - Media.mobile $ marginBottom (px 25) - - ".title" <> ".location" <> ".description" ? do - Size.lineHeight - - ".title" ? do - Media.desktop $ do - display flex - marginBottom (px 10) - - ".skills" & do - Size.tabletMarginBottom - - ".text" ? do - backgroundColor Color.orange - color Color.white - padding (px 0) (px 10) (px 0) (px 10) - sym borderRadius (px 2) - Media.mobileTablet $ marginBottom (px 10) - - ".date" ? do - fontStyle italic - Media.mobile $ fontSize (pct 90) - Media.desktop $ marginLeft (px 15) - - ".description" ? ".detail" ? - marginTop Size.listItemSep - - ".location" ? do - color Color.green - Media.mobile $ do - fontSize (pct 90) - marginBottom (px 10) - Size.tabletMarginBottom - - ".itemList" ? marginTop (px 5) - - ".bullets" |> ".detail" ? do - Media.mobile $ marginBottom Size.listItemSep - Size.tabletMarginBottom - - ".bullets" |> li ? do - Size.lineHeight - before & do - content (stringContent "•") - color Color.red - display inlineBlock - marginRight (px 10) - - ".technos" ? do - display flex - flexWrap CF.wrap - sym2 margin (px 5) (px 0) - - ".technos" |> ".techno" ? do - lineHeight normal - borderBottom solid (px 2) lightgray - margin (px 10) (px 15) (px 5) (px 0) diff --git a/src/Design/Size.hs b/src/Design/Size.hs deleted file mode 100644 index 8b323bf..0000000 --- a/src/Design/Size.hs +++ /dev/null @@ -1,28 +0,0 @@ -module Design.Size - ( indentation - , lineHeight - , listItemSep - , tabletMarginBottom - ) where - -import Clay hiding (lineHeight) -import qualified Clay - -import qualified Design.Media as Media - -indentation :: Css -indentation = do - Media.tablet $ marginLeft (px 10) - Media.desktop $ marginLeft (px 20) - -lineHeight :: Css -lineHeight = do - Media.mobile $ Clay.lineHeight (px 30) - Media.tablet $ Clay.lineHeight (px 35) - Media.desktop $ Clay.lineHeight (px 40) - -listItemSep :: Size LengthUnit -listItemSep = px 8 - -tabletMarginBottom :: Css -tabletMarginBottom = Media.tablet $ marginBottom (px 15) |