knit-haskell: a minimal Rmarkdown sort-of-thing for haskell, by way of Pandoc

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain]

knit-haskell is a beginning attempt at bringing some of the benefits of Rmarkdown to Haskell. It includes an effects stack (using polysemy rather than mtl) which includes logging, a simplified interface to Pandoc and various writer-like effects to intersperse document building with regular code. Various helper functions are provided to simplify common operations, making it especially straightforward to build an HTML document from bits of markdown, latex and Lucid or Blaze html. Support is also included for including hvega visualizations and diagrams from the diagrams package. More information is available in the readme.


[Skip to ReadMe]

Properties

Versions0.1.0.0, 0.2.0.0, 0.3.0.0, 0.4.0.0, 0.5.0.0, 0.6.0.0, 0.6.0.1, 0.7.0.0, 0.7.0.0
Change logChangeLog.md
Dependenciesaeson-pretty (>=0.8.7 && <0.9), base (>=4.12.0 && <4.13), base64-bytestring (>=1.0.0.2 && <1.1.0.0), blaze-colonnade (>=1.2.2 && <1.3.0.0), blaze-html (>=0.9.1 && <0.10), bytestring (>=0.10.8 && <0.11), case-insensitive (>=1.2.0.11 && <1.3.0.0), colonnade (>=1.1 && <1.3), constraints (>=0.10 && <0.12), containers (>=0.5.0 && <0.7), diagrams-lib (>=1.4 && <1.5.0.0), diagrams-svg (>=1.4.1 && <1.5.0.0), directory (>=1.3.3.0 && <1.4.0.0), Glob (>=0.10.0 && <0.11.0), http-client (>=0.6.4 && <0.7.0), http-client-tls (>=0.3.5.3 && <0.4.0.0), http-types (>=0.12.3 && <0.13.0), hvega (>=0.2.0 && <=0.5), logging-effect (>=1.3.3 && <1.4), lucid (>=2.9.11 && <2.10), mtl (>=2.2.2 && <2.3), network (>=2.8.0.0 && <3.2.0.0), network-uri (>=2.6.1.0 && <2.7.0.0), pandoc (>=2.7.2 && <2.8), polysemy (>=1.0.0.0 && <1.3), polysemy-plugin (>=0.2.0.0 && <0.3.0.0), polysemy-zoo (>=0.6.0 && <0.7), prettyprinter (>=1.2.1 && <1.4), random (==1.1.*), random-fu (>=0.2.7 && <0.3), random-source (>=0.3.0 && <0.4), svg-builder (>=0.1.1 && <0.2), text (>=1.2.3 && <1.3), time (>=1.8.0 && <2.0.0) [details]
LicenseBSD-3-Clause
Copyright2019 Adam Conner-Sax
AuthorAdam Conner-Sax
Maintaineradam_conner_sax@yahoo.com
CategoryText
Home pagehttps://github.com/adamConnerSax/knit-haskell#readme
Bug trackerhttps://github.com/adamConnerSax/knit-haskell/issues
Source repositoryhead: git clone https://github.com/adamConnerSax/knit-haskell
UploadedMon Sep 16 18:01:26 UTC 2019 by adamCS

Modules

Downloads

Maintainers' corner

For package maintainers and hackage trustees


Readme for knit-haskell-0.7.0.0

[back to package description]

knit-haskell v0.7.0.0

Build Status Hackage Hackage Dependencies

Introduction

knit-haskell is an attempt to emulate parts of the RMarkdown/knitR experience in haskell. The idea is to be able to build HTML (or, perhaps, some other things Pandoc can write) inside a haskell executable.
This package has some wrapping around Pandoc and the PandocMonad as well as logging facilities and some support for inserting hvega visualizations.
All of that is handled via writer-like effects, so additions to the documents can be interspersed with regular haskell code.

Supported Inputs

Examples

There are a few examples in the "examples" directory.

Notes

  1. adding "polysemy-plugin" in build-depends and
  2. Add "ghc-options: -fplugin=Polysemy.Plugin" to your package configuration. Pandoc effects and writer effects for document building are also provided.