72b1ee1d3d
Backend (Server.hs): - serveStaticOrSpa: serves static files from --static-dir - SPA fallback: extensionless paths serve index.html - MIME type mapping for html/css/js/png/svg/ico/woff2 Frontend: - ES module imports with import map for Mithril CDN - Build script: tsc + copy index.html + static assets CLI: - --static-dir flag (default: frontend/dist) - scripts/run passes through extra args - Dockerfile CMD points at /usr/local/share/sis/static
78 lines
1.4 KiB
YAML
78 lines
1.4 KiB
YAML
name: sis-server
|
|
version: 0.1.0
|
|
synopsis: Shared household chore/task tracker
|
|
description: A todo tracker for households and groups with shared
|
|
repeated responsibilities. JSON API backend for a
|
|
Mithril.js SPA frontend.
|
|
author: James Brechtel
|
|
maintainer: james@flipstone.com
|
|
copyright: 2026 James Brechtel
|
|
license: BSD-3-Clause
|
|
|
|
default-extensions:
|
|
- DerivingStrategies
|
|
- ImportQualifiedPost
|
|
- LambdaCase
|
|
- OverloadedStrings
|
|
- RecordWildCards
|
|
- TupleSections
|
|
|
|
ghc-options:
|
|
- -Wall
|
|
- -Werror
|
|
- -Wcompat
|
|
- -Widentities
|
|
- -Wincomplete-record-updates
|
|
- -Wincomplete-uni-patterns
|
|
- -Wmissing-export-lists
|
|
- -Wmissing-home-modules
|
|
- -Wpartial-fields
|
|
- -Wredundant-constraints
|
|
|
|
dependencies:
|
|
- base >= 4.7 && < 5
|
|
- aeson
|
|
- beeline-routing
|
|
- bytestring
|
|
- containers
|
|
- directory
|
|
- filepath
|
|
- http-types
|
|
- json-fleece-aeson
|
|
- json-fleece-core
|
|
- mtl
|
|
- optparse-applicative
|
|
- safe-exceptions
|
|
- shrubbery
|
|
- text
|
|
- time
|
|
- wai
|
|
- warp
|
|
|
|
library:
|
|
source-dirs: src
|
|
dependencies:
|
|
- orb
|
|
|
|
executables:
|
|
sis-server:
|
|
main: Main.hs
|
|
source-dirs: app
|
|
ghc-options:
|
|
- -threaded
|
|
- -rtsopts
|
|
- -with-rtsopts=-N
|
|
dependencies:
|
|
- optparse-applicative
|
|
- orb
|
|
- sis-server
|
|
- unix
|
|
|
|
tests:
|
|
sis-server-test:
|
|
main: Spec.hs
|
|
source-dirs: test
|
|
dependencies:
|
|
- hspec
|
|
- sis-server
|