MyNixOS website logo
Description

Generate useful files for Haskell projects.

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

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.

Metadata

Version

0.1.0.0

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows