homepage: ''
changelog-type: ''
hash: 8ed4ae1ae27e9684ee3358d4bb2b500566007142d2ddab49f9ef7bf685d7473c
test-bench-deps:
  hlint: -any
  base: ==4.7.*
  hspec: ! '>=2.0'
  harmony: -any
  HUnit: -any
  containers: -any
  hslogger: -any
  QuickCheck: -any
  derive: -any
maintainer: santimunin@gmail.com
synopsis: A web service specification compiler that generates implementation and tests.
changelog: ''
basic-deps:
  base: ==4.7.*
  text: -any
  process: -any
  harmony: -any
  array: -any
  hastache: -any
  containers: -any
  hslogger: -any
  mtl: -any
  QuickCheck: -any
  BNFC: -any
  derive: -any
  directory: -any
all-versions:
- '0.1.0.0'
author: Santiago Munín
latest: '0.1.0.0'
description-type: markdown
description: ! "# Harmony\nHarmony is a web service specification compiler that generates
  implementation (server and client) and tests.\n\n## Targets supported\n\n+ Server\n
  \ * Node.js (`-sjs`)\n+ Client (and [Hypothesis](https://github.com/DRMacIver/hypothesis)
  based tests)\n  + Python (`-cpython`)\n\n## Usage\n\nAfter installing the package
  (`cabal install`), you will get the `harmony` executable. Afterwards:\n\n    Usage:
  harmony [OPTION...] input_file\n      -c[CLIENTS]     --client[=CLIENTS]         Desired
  output for the client\n      -s[SERVERS]     --server[=SERVERS]         Desired
  output for the server\n      -o[OUTPUT_DIR]  --output_dir[=OUTPUT_DIR]  Output path\n\nCheck
  the [Targets supported](#targets-supported) section to figure out the code related
  to each target.\n## Syntax\n\nThe input file should follow the syntax specified
  in `language_spec/Language.cf`. Example:\n\n    service_name: HouseworkService\n
  \   service_version: 1.0.0\n\n    enum Color { RED, BLUE, BLACK }\n\n    struct
  Task {\n       // Primary key\n       @PK\n       name : String,\n       color :
  Color\n    }\n\n    struct Person {\n      name: String,\n      age: Int,\n      tasks:
  [Task]\n    }\n\n    resource Person (\"/person\")\n"
license-name: GPL-3

Update from Hackage at 2015-08-16T10:18:27+0000
Update from Hackage at 2015-08-16T10:18:27+0000
