π ARCHITECTURE
We have Spaghetti ARCHITECTURE inspired by Flying Spaghetti Monster
Tools and libraries:
- For start:
- Summoner for scaffolding fully configured batteries-included production-level Haskell projects
- cake-slayer - Architecture of Haskell backend applications
- three-layer - Architecture of Haskell backend applications
- cabal-fmt for format .cabal files
- For static code analysis:
- hlint for source code suggestions
- hlint-test for run hlint in test suite
- weeder for detect dead code
- stan for STatic ANalysis
- hlint for source code suggestions
- For dynamic code analysis:
- hspec for unit and integration tests
- hspec-golden for golden tests
- hspec-slow for find slow test cases
- gauge for performance measurement and analysis
- weigh for measure allocations of a Haskell functions/values
- hspec for unit and integration tests
- For configuration:
- optparse-applicative for parse options
- tomland for configuration from file
- dhall-haskell for configuration from file
- For patching List:
- ilist for doing index-related things
- list-singleton for easily and clearly create lists with only one element in them
- slist for sized list
- split for splitting lists
- For production code:
- mtl for IoC
- RIO as standard library
- mono-traversable as container standard library
- data-default for default values
- validation-selective is lighweight pure data validation based on Applicative and Selective functors
- filepath for manipulating FilePaths in a cross platform way.
- pretty-simple for data types with a βShowβ instance