hackmanager: Generate useful files for Haskell projects

[ bsd3, development, library, program ] [ Propose Tags ] [ Report a vulnerability ]

Simplify managing Haskell projects by generating files like README.md, .travis.yml, etc.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0
Dependencies base (>=4.7 && <5), bytestring (>=0.10), Cabal (>=1.20), directory (>=1.2), file-embed (>=0.0.8), Glob (>=0.7), hackmanager, hastache (>=0.6), http-client (>=0.4), http-client-tls (>=0.2), http-types (>=0.8.6), mtl (>=2.2), optparse-applicative (>=0.11), process (>=1.2), text (>=1.2) [details]
Tested with ghc >=7.10 && <7.11
License BSD-3-Clause
Copyright (c) 2015 Alexander Thiemann
Author Alexander Thiemann <mail@athiemann.net>
Maintainer Alexander Thiemann <mail@athiemann.net>
Category Development
Home page http://github.com/agrafix/hackmanager
Source repo head: git clone https://github.com/agrafix/hackmanager
Uploaded by AlexanderThiemann at 2015-08-23T13:39:11Z
Distributions
Executables hackmanager
Downloads 1135 total (5 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2015-08-23 [all 1 reports]

Readme for hackmanager-0.1.0.0

[back to package description]

hackmanager

Build Status

Intro

Generate useful files for Haskell projects

Cli Usage: hackmanager

$ hackmanager --help
hackmanager - Generate useful files for Haskell projects

Usage: hackmanager COMMAND
  Simplify managing Haskell projects by generating files like README.md,
  .travis.yml, etc.

Available options:
  -h,--help                Show this help text

Available commands:
  readme                   
  travis                   
  gitignore                

(c) 2015 Alexander Thiemann - BSD3 License

Library Usage Example

module Main where

import Hack.Manager.Collector
import Hack.Manager.Readme

import qualified Data.Text as T

main :: IO ()
main =
    do pi <- getProjectInfo
       case pi of
         Left err -> putStrLn err
         Right info ->
             do rm <- renderReadme info
                putStrLn (T.unpack rm)

Install

  • From Source (cabal): git clone https://github.com/agrafix/hackmanager.git && cd hackmanager && cabal install
  • From Source (stack): git clone https://github.com/agrafix/hackmanager.git && cd hackmanager && stack build

Features

  • Automagically collect package information such as
    • package name
    • GHC compatibility
    • stack Project
    • Hackage / Stackage status
    • License
    • Examples
    • Cli Usage
  • Typecheck examples
  • Generate informative README.md (Can be extended using a MORE.md)
  • Generate .travis.yml (cabal or stack based)
  • Generate .gitignore

The generated .travis.yml and .gitignore are intended as starting templates, while the generated README.md should not be modified by hand. Rerun hackmanager readme before every commit (commit hook?) to keep it up to date. If you would like to add custom sections, create a MORE.md.

Roadmap

There's no real roadmap - I will add features as needed. I am open to any contributions!

Misc

Supported GHC Versions

  • 7.10.2

License

Released under the BSD3 license. (c) 2015 Alexander Thiemann