Summoner is a tool for scaffolding fully configured batteries-included production-level Haskell projects. Do you want to create a library that is to be uploaded to Hackage/Stackage, that builds with both Cabal and Stack and supports the latest three major GHC versions? Or are you building a production application that uses a custom prelude and has CI with GitHub Actions or Travis Linux and AppVeyors Windows checks? Maybe do you want to play with your idea in a single module without introducing the whole complexity of the Haskell projects. Summoner can help you do all that with minimal effort from you - it can even upload the project to GitHub if you wish! By the way, Summoner operates as either CLI or TUI application, so you can choose what you are more comfortable with and install only the required one.
Features
- Summoner is a tool that combines predefined configurations, command-line arguments and a chosen interface
- Support for Cabal and Stack build tools
- Ability to pick stanzas (library, executable, test-suite, benchmark)
- Usage of common stanza to reduce .cabal file's boilerplate
- Option to include an alternative prelude, if desired. The project would then use the mixins technique
- Whole Hackage-upload checklist support (exhaustive .cabal file, PVP versioning, GHC options, conventional meta files)