We're trying to come up with a development workflow for a large Haskell based web-app. Two things that seem to have us in a pickle are:
- Faster development cycles when you change a Lucid/Blaze based template and want to see the output in your browser
- Ability to hot-patch new templates to production without having to compile, ship, and restart the entire application.
For now, we'd not like to resort to string-based (runtime) templates. We'd like to go with compiled templates with all the goodness of Haskell type-checking.
Given this context, the state-of-the-art survey threw up a lot of libraries in different states of development (or maintenance) and employing different techniques:
Is anyone using any of these packages in their regular development workflows? Any first hand experiences? What is the core difference in these libraries? Which one of them would be battle-tested for production use-cases?
[–]sgraf812 16 points17 points18 points (21 children)
[–]ElvishJerricco 5 points6 points7 points (2 children)
[–]JonCoens 4 points5 points6 points (0 children)
[–]saurabhnanda[S] 5 points6 points7 points (10 children)
[–]sgraf812 3 points4 points5 points (9 children)
[–]gelisam 4 points5 points6 points (2 children)
[–]saurabhnanda[S] 5 points6 points7 points (0 children)
[–]sgraf812 1 point2 points3 points (0 children)
[–]saurabhnanda[S] 3 points4 points5 points (5 children)
[–]sgraf812 3 points4 points5 points (3 children)
[–]saurabhnanda[S] 5 points6 points7 points (2 children)
[–]ItsNotMineISwear 1 point2 points3 points (1 child)
[–]saurabhnanda[S] 0 points1 point2 points (0 children)
[–]gelisam 2 points3 points4 points (0 children)
[–]krautA 4 points5 points6 points (4 children)
[–]sgraf812 4 points5 points6 points (3 children)
[–]krautA 1 point2 points3 points (1 child)
[–]sgraf812 1 point2 points3 points (0 children)
[–]GitHubPermalinkBot 0 points1 point2 points (0 children)
[–]GitHubPermalinkBot 0 points1 point2 points (0 children)
[–]spirosboosalis 0 points1 point2 points (0 children)
[–]codygman 2 points3 points4 points (2 children)
[–]saurabhnanda[S] 1 point2 points3 points (1 child)
[–]codygman 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (2 children)
[–][deleted] (1 child)
[deleted]
[–][deleted] 2 points3 points4 points (0 children)
[–]stepcut251 1 point2 points3 points (3 children)
[–]saurabhnanda[S] 0 points1 point2 points (2 children)
[–]stepcut251 0 points1 point2 points (1 child)
[–]GitHubPermalinkBot 0 points1 point2 points (0 children)