packages feed

kitchen-sink-0.1.0.0: kitchen-sink.cabal

cabal-version:      3.4
name:               kitchen-sink
version:            0.1.0.0
synopsis:           Static-site generator, dev server and API gateway
description:
    Kitchen-Sink is a static-site generator and a dev/serve HTTP daemon (with
    an API gateway / reverse proxy). Pages are written as CommonMark documents
    split into typed sections (JSON metadata, CSS, datasets, tramaj templates,
    external generators), and the same production pipeline powers a one-shot
    @produce@ command, a filesystem-watching DEV server that renders targets
    on the fly, and a multi-site SERVE daemon with per-domain TLS.
    .
    The package ships the @kitchen-sink@ executable and the library behind it.
    Documentation: <https://kitchensink-tech.github.io/>.
homepage:           https://kitchensink-tech.github.io/
bug-reports:        https://github.com/kitchensink-tech/kitchensink/issues
license:            BSD-3-Clause
license-file:       LICENSE
copyright:          (c) 2026 Lucas DiCioccio
author:             Lucas DiCioccio
maintainer:         lucas@dicioccio.fr
category:           Web
build-type:         Simple
tested-with:        GHC ==9.10.3
extra-doc-files:    CHANGELOG.md
                   , README.md
extra-source-files: scaffolding/*.json
                   , scaffolding/*.md
                   , scaffolding/*.tmpl
                   , scaffolding/js/*.js
                   , scaffolding/css/*.css

source-repository head
    type:     git
    location: https://github.com/kitchensink-tech/kitchensink
    subdir:   hs

flag purescript-bridge
    description: Build the kitchen-sink-purescript-bridge development executable (not part of the Hackage release).
    default:     False
    manual:      True

flag werror
    description: Turn warnings into errors (development and CI).
    default:     False
    manual:      True

library
    exposed-modules: KitchenSink.Layout.Base
                 , KitchenSink.Layout.Blog
                 , KitchenSink.Layout.Blog.Extensions
                 , KitchenSink.Layout.Blog.Targets
                 , KitchenSink.Layout.Blog.Summary
                 , KitchenSink.Layout.Blog.Analyses
                 , KitchenSink.Layout.Blog.Analyses.ArticleInfos
                 , KitchenSink.Layout.Blog.Analyses.GlossaryGrouping
                 , KitchenSink.Layout.Blog.Analyses.FileCount
                 , KitchenSink.Layout.Blog.Analyses.SkyLine
                 , KitchenSink.Layout.Blog.Analyses.SiteGraph
                 , KitchenSink.Layout.Blog.Analyses.TextRender
                 , KitchenSink.Layout.Blog.Analyses.TopicStats
                 , KitchenSink.Layout.Blog.Analyses.Wordcount
                 , KitchenSink.Layout.Blog.Fragments
                 , KitchenSink.Layout.Blog.Destinations
                 , KitchenSink.Layout.Blog.Metadata
                 , KitchenSink.Layout.Blog.SpecialArticles
                 , KitchenSink.Layout.Blog.ArticleTypes
                 , KitchenSink.Core.Assembler
                 , KitchenSink.Core.Assembler.Base
                 , KitchenSink.Core.Assembler.Sections
                 , KitchenSink.Core.Assembler.Sections.CommonMark
                 , KitchenSink.Core.Assembler.Sections.PreRendered
                 , KitchenSink.Core.Assembler.Sections.Json
                 , KitchenSink.Core.Assembler.Sections.Primitives
                 , KitchenSink.Core.Build.Site
                 , KitchenSink.Core.Build.Target
                 , KitchenSink.Core.Build.Trace
                 , KitchenSink.Core.Generator
                 , KitchenSink.Core.Section
                 , KitchenSink.Core.Section.Base
                 , KitchenSink.Core.Section.Parser
                 , KitchenSink.Core.Section.Payloads
                 , KitchenSink.Commonmark.BlogHTML
                 , KitchenSink.Commonmark.Highlighting
                 , KitchenSink.Commonmark.HashTag
                 , KitchenSink.Commonmark.Free
                 , KitchenSink.Engine
                 , KitchenSink.Engine.Api
                 , KitchenSink.Engine.Diagnostics
                 , KitchenSink.Engine.Config
                 , KitchenSink.Engine.Counters
                 , KitchenSink.Engine.Handlers
                 , KitchenSink.Engine.Init
                 , KitchenSink.Engine.MultiSite
                 , KitchenSink.Engine.MultiSiteConfig
                 , KitchenSink.Engine.NewArticle
                 , KitchenSink.Engine.OnTheFly
                 , KitchenSink.Engine.Produce
                 , KitchenSink.Engine.Runtime
                 , KitchenSink.Engine.Serve
                 , KitchenSink.Engine.SiteConfig
                 , KitchenSink.Engine.SiteLoader
                 , KitchenSink.Engine.SiteBuilder
                 , KitchenSink.Engine.Templating
                 , KitchenSink.Engine.Toolbox
                 , KitchenSink.Engine.Dynamic
                 , KitchenSink.Engine.Auth
                 , KitchenSink.Engine.Track
                 , KitchenSink.Engine.Utils
                 , KitchenSink.Prelude

    -- LANGUAGE extensions used by modules in this package.
    default-extensions: OverloadedStrings
                    , TypeApplications
                    , NoImplicitPrelude
    -- other-extensions:
    build-depends:    base >= 4.20.2 && < 4.21
                    , aeson >= 2.2.5 && < 2.3
                    , async >= 2.2.6 && < 2.3
                    , bytestring >= 0.12.2 && < 0.13
                    , containers >= 0.6.8 && < 0.7
                    , directory >= 1.3.8 && < 1.4
                    , file-embed >= 0.0.16 && < 0.1
                    , either >= 5.0.3 && < 5.1
                    , lens-family-core >= 2.1.3 && < 2.2
                    , feed >= 1.3.2 && < 1.4
                    , filepath >= 1.5.4 && < 1.6
                    , http-reverse-proxy >= 0.6.2 && < 0.7
                    , http-client >= 0.7.19 && < 0.8
                    , http-client-tls >= 0.3.6 && < 0.4
                    , process-extras >= 0.7.4 && < 0.8
                    , text >= 2.1.4 && < 2.2
                    , time >= 1.12.2 && < 1.13
                    , commonmark >= 0.3.1 && < 0.4
                    , commonmark-extensions >= 0.2.7 && < 0.3
                    , lucid >= 2.11.20260427 && < 2.12
                    , megaparsec >= 9.8.3 && < 9.9
                    , mtl >= 2.3.1 && < 2.4
                    , mustache >= 2.4.3 && < 2.5
                    , optparse-generic >= 1.5.3 && < 1.6
                    , parsec >= 3.1.18 && < 3.2
                    , blaze-markup >= 0.8.3 && < 0.9
                    , blaze-html >= 0.9.2 && < 0.10
                    , skylighting-core >= 0.15 && < 0.16
                    , skylighting >= 0.15 && < 0.16
                    , servant >= 0.20.3 && < 0.21
                    , servant-server >= 0.20.3 && < 0.21
                    , prometheus-client >= 1.1.2 && < 1.2
                    , process >= 1.6.26 && < 1.7
                    , scientific >= 0.3.9 && < 0.4
                    , prodapi-core >= 0.1.0 && < 0.2
                    , prodapi-web >= 0.1.0 && < 0.2
                    , prodapi-proxy >= 0.2.0 && < 0.3
                    , stm >= 2.5.3 && < 2.6
                    , tramaj-hs >= 0.3.0 && < 0.4
                    , tls >= 2.0.6 && < 2.1
                    , http-types >= 0.12.6 && < 0.13
                    , wai >= 3.2.5 && < 3.3
                    , warp >= 3.4.12 && < 3.5
                    , warp-tls >= 3.4.9 && < 3.5
                    , wai-extra >= 3.1.18 && < 3.2
                    , xml-conduit >= 1.10.1 && < 1.11
                    , fsnotify >= 0.4.4 && < 0.5
                    , direct-sqlite >= 2.3.29 && < 2.4
                    , base64-bytestring >= 1.2.1 && < 1.3
                    , crypton >= 1.0.6 && < 1.1
                    , memory >= 0.18.0 && < 0.19

    hs-source-dirs:   src
    default-language: GHC2021

    ghc-options: -Wall
    if flag(werror)
        ghc-options: -Werror

executable kitchen-sink
    main-is:          Main.hs
    build-depends:    base >= 4.20.2 && < 4.21
                    , kitchen-sink
    ghc-options: -threaded
    default-language: GHC2021
    hs-source-dirs:   app

executable kitchen-sink-tool
    main-is:          Main.hs
    build-depends:    base >= 4.20.2 && < 4.21
                    , kitchen-sink
    ghc-options: -threaded
    default-language: GHC2021
    hs-source-dirs:   toolbox-app

executable kitchen-sink-purescript-bridge
    main-is:          Main.hs
    other-modules:    Bridge
    if flag(purescript-bridge)
        build-depends:    base >= 4.20.2 && < 4.21
                        , aeson >= 2.2.5 && < 2.3
                        , kitchen-sink
                        , optparse-generic >= 1.5.3 && < 1.6
                        , purescript-bridge >= 0.15.0 && < 0.16
                        , text >= 2.1.4 && < 2.2
    else
        buildable: False
    hs-source-dirs:   bridge
    default-language: GHC2021