Project status: alpha. You can run it if you are prepared to do some work. In particular, you'll need a running Postgres server and will have to run some SQL statements.
Implemented using the Yesod framework.
Building and running instructions. Introductory page. Haddock.
As this is a learning exercise for the author:
- It is likely that best practice is not followed in some areas.
- Code will be rewritten in progressively higher-level constructions.
- Patches and comments are welcome, provided they are explained.
- The Yesod scaffolding system is not of interest.
Now that the project has become feasibly useable:
- I will try to ensure that any database migration is automatic.
- As soon as CI is complete, I'll only push to github when the tests pass.
- I'll keep Haddock up to date.
- No anonymous name importation; either import qualified or import an explicit list.
- No 'do'.
- No partial functions: mainly replace 'head' with 'uncons'.
- Single tab indentation.
- Clean pass of hlint.
- Clean pass of weeder.
- Prefer CPS to pattern-matching.
- Filenames ending in -Data.hs are persistent TH tables and minimal supporting code.
- Do not use extra spaces to align related items vertically.
stack exec -- haddock --html --optghc=-fno-warn-tabs source/*.hs --hyperlinked-source --odir=site/documentation/