4943d4d42e
- Add Roux.Server: WAI application using wai+warp directly - Scans .cook files from recipe directory on startup - GET / → HTML index page listing all recipes - Other routes → 404 - Add Roux.RecipeIndex: directory scanning and recipe parsing - scanRecipes: lists .cook files, parses each, extracts titles - Falls back to filename when metadata title is absent - Add Roux.Html: blaze-html rendering with Pico CSS - indexPage: renders recipe list with links - urlEncode: percent-encodes filenames for URLs - Update Roux.hs: re-exports Server.app and Types - Add filepath to dependencies
119 lines
2.8 KiB
Plaintext
119 lines
2.8 KiB
Plaintext
cabal-version: 2.2
|
|
|
|
-- This file has been generated from package.yaml by hpack version 0.38.1.
|
|
--
|
|
-- see: https://github.com/sol/hpack
|
|
|
|
name: roux-server
|
|
version: 0.1.0
|
|
synopsis: Personal/family recipe management site
|
|
description: A low-friction recipe manager using Cooklang files, with cook history tracking and search.
|
|
author: James Brechtel
|
|
maintainer: james@flipstone.com
|
|
copyright: 2026 James Brechtel
|
|
license: BSD-3-Clause
|
|
build-type: Simple
|
|
|
|
library
|
|
exposed-modules:
|
|
Roux
|
|
Roux.Html
|
|
Roux.Parser
|
|
Roux.RecipeIndex
|
|
Roux.Server
|
|
Roux.Types
|
|
other-modules:
|
|
Paths_roux_server
|
|
autogen-modules:
|
|
Paths_roux_server
|
|
hs-source-dirs:
|
|
src
|
|
default-extensions:
|
|
DerivingStrategies
|
|
OverloadedStrings
|
|
ghc-options: -Wall -Werror -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-export-lists -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints
|
|
build-depends:
|
|
base >=4.7 && <5
|
|
, blaze-html
|
|
, blaze-markup
|
|
, bytestring
|
|
, containers
|
|
, directory
|
|
, filepath
|
|
, http-types
|
|
, optparse-applicative
|
|
, parsec
|
|
, text
|
|
, time
|
|
, wai
|
|
, warp
|
|
default-language: Haskell2010
|
|
|
|
executable roux-server
|
|
main-is: Main.hs
|
|
other-modules:
|
|
Paths_roux_server
|
|
autogen-modules:
|
|
Paths_roux_server
|
|
hs-source-dirs:
|
|
app
|
|
default-extensions:
|
|
DerivingStrategies
|
|
OverloadedStrings
|
|
ghc-options: -Wall -Werror -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-export-lists -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-N
|
|
build-depends:
|
|
base >=4.7 && <5
|
|
, blaze-html
|
|
, blaze-markup
|
|
, bytestring
|
|
, containers
|
|
, directory
|
|
, filepath
|
|
, http-types
|
|
, optparse-applicative
|
|
, parsec
|
|
, roux-server
|
|
, text
|
|
, time
|
|
, unix
|
|
, wai
|
|
, warp
|
|
default-language: Haskell2010
|
|
|
|
test-suite roux-server-test
|
|
type: exitcode-stdio-1.0
|
|
main-is: Spec.hs
|
|
other-modules:
|
|
Roux.ParserSpec
|
|
Paths_roux_server
|
|
autogen-modules:
|
|
Paths_roux_server
|
|
hs-source-dirs:
|
|
test
|
|
default-extensions:
|
|
DerivingStrategies
|
|
OverloadedStrings
|
|
ghc-options: -Wall -Werror -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-export-lists -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints
|
|
build-depends:
|
|
base >=4.7 && <5
|
|
, blaze-html
|
|
, blaze-markup
|
|
, bytestring
|
|
, containers
|
|
, directory
|
|
, filepath
|
|
, hspec
|
|
, http-types
|
|
, optparse-applicative
|
|
, parsec
|
|
, roux-server
|
|
, tasty
|
|
, tasty-golden
|
|
, tasty-hspec
|
|
, tasty-hunit
|
|
, text
|
|
, time
|
|
, wai
|
|
, warp
|
|
default-language: Haskell2010
|