packages feed

minilight-0.4.4: minilight.cabal

cabal-version:       2.4
-- Initial package description 'minilight.cabal' generated by 'cabal init'.
--   For further documentation, see http://haskell.org/cabal/users-guide/

name:                minilight
version:             0.4.4
synopsis:            A SDL2-based graphics library, batteries-included.
description:
  This package provides the wheel for a graphical application or a game.
  .
  Basic concepts and features:
  .
  - Figure: convenient SDL texture, once created, it can be translated or rotated during rendering.
  - Component: a reusable widget with event handlers, its figures can also be cached.
  - Hot Config Replacement: view components can be constructed by an external yaml file with live preview.
  - built-in components: some common components are predefined. You can define a new component by yourself.

-- bug-reports:
license:             MIT
license-file:        LICENSE
author:              myuon
maintainer:          ioi.joi.koi.loi@gmail.com
-- copyright:
category:            Graphics
extra-source-files:
  CHANGELOG.md
  README.md

source-repository head
  type:     git
  location: https://github.com/myuon/minilight.git

library
  exposed-modules:
    Control.Lens.TH.Rules
    Control.Monad.Caster
    Data.Vector.Mutable.PushBack
    Data.Registry
    Data.Registry.Class
    Data.Registry.HashTable
    MiniLight
    MiniLight.Figure
    MiniLight.Light
    MiniLight.Event
    MiniLight.Component
    MiniLight.Loader.Internal.Types
    MiniLight.Loader.Internal.Resolver
    MiniLight.Loader
    Data.Config.Font
    Data.Component.Basic
    Data.Component.Layer
    Data.Component.AnimationLayer
    Data.Component.MessageEngine
    Data.Component.MessageLayer
    Data.Component.Button
    Data.Component.Selection
    Data.Component.Resolver
  -- other-modules:
  -- other-extensions:
  build-depends:
    aeson-diff           >= 1.1.0 && < 1.2,
    FontyFruity          >= 0.5.3 && < 0.6,
    base                 >= 4 && < 5,
    caster               >= 0.0.2.0 && < 0.1,
    containers           >= 0.6.0 && < 0.7,
    text                 >= 1.2.3 && < 1.3,
    vector               >= 0.12.0 && < 0.13,
    aeson                >= 1.4.2 && < 1.5,
    scientific           >= 0.3.6 && < 0.4,
    hashable             >= 1.3.0 && < 1.4,
    hashtables           >= 1.2.3 && < 1.3,
    template-haskell     >= 2.14.0 && < 2.16,
    unordered-containers >= 0.2.10 && < 0.3,
    exceptions           >= 0.10.1 && < 0.11,
    mtl                  >= 2.2.2 && < 2.3,
    lens                 >= 4.19 && < 4.20,
    linear               >= 1.20.8 && < 1.21,
    sdl2                 >= 2.4.0 && < 2.5,
    sdl2-gfx             >= 0.2 && < 0.3,
    sdl2-image           >= 2.0.0 && < 2.1,
    sdl2-ttf             >= 2.1.0 && < 2.2,
    transformers         >= 0.5.6 && < 0.6,
    trifecta             >= 2.1 && < 2.2,
    uuid                 >= 1.3.12 && < 1.4,
    yaml                 >= 0.11.0 && < 0.12,
    mwc-random           >= 0.14.0 && < 0.15,
    fsnotify             >= 0.3.0 && < 0.4,
  hs-source-dirs:      src
  default-language:    Haskell2010
  default-extensions: 
    FlexibleContexts
    FlexibleInstances
    GADTs
    LambdaCase
    OverloadedStrings
    MultiParamTypeClasses
    RankNTypes
    Strict
    TemplateHaskell
    ViewPatterns
  ghc-options: -Wall -Wno-name-shadowing

test-suite tests
  type: exitcode-stdio-1.0
  main-is: Driver.hs
  build-tool-depends:
    tasty-discover:tasty-discover >= 4.2 && < 4.3,
  build-depends:
    aeson,
    base,
    minilight,
    tasty,
    tasty-hspec,
    trifecta,
    vector,
    yaml,
  hs-source-dirs:      test
  default-language:    Haskell2010

executable button-counter
  hs-source-dirs: examples
  main-is: button-counter.hs
  default-language:    Haskell2010
  build-depends:
    base,
    minilight,
    sdl2,
    sdl2-ttf,
    text,
  ghc-options: -Wall -Wno-name-shadowing

executable boids
  hs-source-dirs: examples
  main-is: boids.hs
  default-language:    Haskell2010
  build-depends:
    base,
    linear,
    microlens,
    minilight,
    mtl,
    mwc-random,
    sdl2,
    sdl2-ttf,
    text,
    vector,
  ghc-options: -Wall -Wno-name-shadowing