hyperbole-0.6.0: Interactive HTML apps using type-safe serverside Haskell
Safe HaskellSafe-Inferred
LanguageGHC2021

Web.Hyperbole.Document

Synopsis

Documentation

data Document Source #

Constructors

Document 

document :: View DocumentHead () -> ByteString -> ByteString Source #

liveApp requires a function which turns an html fragment into an entire html document. Use this to import javascript, css, etc. Use quickStartDocument to get going quickly

app :: Application
app = liveApp (document documentHead) (routeRequest router)

data DocumentHead Source #

Create a custom <head> to use with document. Remember to include at least scriptEmbed!

import Web.Hyperbole (scriptEmbed, cssEmbed)

documentHead :: View DocumentHead ()
documentHead = do
  title "My Website"
  script' scriptEmbed
  style cssEmbed
  script "custom.js"

app :: Application
app = liveApp (document documentHead) (routeRequest router)

Constructors

DocumentHead 

Instances

Instances details
Generic DocumentHead Source # 
Instance details

Defined in Web.Hyperbole.Document

Associated Types

type Rep DocumentHead :: Type -> Type #

ViewId DocumentHead Source # 
Instance details

Defined in Web.Hyperbole.Document

Associated Types

type ViewState DocumentHead Source #

type Rep DocumentHead Source # 
Instance details

Defined in Web.Hyperbole.Document

type Rep DocumentHead = D1 ('MetaData "DocumentHead" "Web.Hyperbole.Document" "hyperbole-0.6.0-inplace" 'False) (C1 ('MetaCons "DocumentHead" 'PrefixI 'False) (U1 :: Type -> Type))
type ViewState DocumentHead Source # 
Instance details

Defined in Web.Hyperbole.Document

quickStartDocument :: ByteString -> ByteString Source #

A simple mobile-friendly document with all required embeds and live reload

liveApp quickStartDocument (routeRequest router)

quickStart :: View DocumentHead () Source #

A simple mobile-friendly header with all required embeds and live reload

mobileFriendly :: View DocumentHead () Source #

Set the viewport to handle mobile zoom