miso-1.12.0.0: src/Miso/Prelude.hs
-----------------------------------------------------------------------------
-- |
-- Module : Miso.Prelude
-- Copyright : (C) 2016-2026 David M. Johnson
-- License : BSD3-style (see the file LICENSE)
-- Maintainer : David M. Johnson <code@dmj.io>
-- Stability : experimental
-- Portability : non-portable
--
-- = Overview
--
-- "Miso.Prelude" is a batteries-included custom prelude for miso
-- applications. It re-exports:
--
-- * The entirety of "Miso" — all view, update, and subscription
-- combinators are available without a qualified import.
-- * The standard 'Prelude' — familiar Haskell functions remain in scope,
-- with @'(!!)'@ hidden to avoid the clash with miso's index operator.
-- * @'Control.Category.(.)'@ — replaces 'Prelude.(.)' so it works for any
-- 'Control.Category.Category', not just @(->)@.
--
-- = Usage
--
-- __Option 1 — explicit import__ (simplest):
--
-- @
-- import "Miso.Prelude"
-- @
--
-- __Option 2 — Cabal mixin__ (replaces @Prelude@ project-wide, zero
-- per-file boilerplate):
--
-- @
-- executable app
-- main-is: Main.hs
-- build-depends: base, miso
-- mixins:
-- miso,
-- miso (Miso.Prelude as Prelude),
-- base hiding (Prelude)
-- default-language: Haskell2010
-- @
--
-- = See also
--
-- * "Miso" — the main miso re-export hub
-- * "Miso.Effect" — 'Miso.Effect.Effect', 'Miso.Effect.Sub', 'Miso.Effect.io_'
-- * "Miso.Html" — HTML element and event combinators
-----------------------------------------------------------------------------
module Miso.Prelude
( module Miso
, module Prelude
, (.)
) where
----------------------------------------------------------------------------
import Control.Category ((.))
import Prelude hiding ((.), (!!))
import Miso
----------------------------------------------------------------------------