byline alternatives and similar packages
Based on the "System" category.
Alternatively, view byline alternatives based on common mentions on social networks and blogs.
-
ghc-hotswap
DISCONTINUED. Example code for how we swap compiled code within a running Haskell process. -
plugins
Dynamic linking and runtime evaluation of Haskell, and C, including dependency chasing and package resolution. -
ascii-progress
A simple Haskell progress bar for the console. Heavily borrows from TJ Holowaychuk's Node.JS project -
language-puppet
A library to work with Puppet manifests, test them and eventually replace everything ruby.
SaaSHub - Software Alternatives and Reviews
Do you think we are missing an alternative of byline or a related project?
README
Byline
Byline simplifies writing interactive command-line applications by building upon ansi-terminal and haskeline. This makes it possible to print messages and prompts that include terminal escape sequences such as colors that are automatically disabled when standard input is a file. It also means that Byline works on both POSIX-compatible systems and on Windows.
The primary features of Byline include printing messages, prompting for input, and generating custom menus. It was inspired by the highline Ruby library and the terminal library by Craig Roche.
Example Using MonadByline
example :: MonadByline m => m Text
example = do
sayLn ("Hey, I like " <> ("Haskell" <> fg magenta) <> "!")
let question =
"What's "
<> ("your" <> bold)
<> " favorite "
<> ("language" <> fg green <> underline)
<> "? "
askLn question (Just "Haskell")
[Demo](doc/demo.png)
Interfaces
The MTL interface lives in the [
mtl
](mtl) directory.A
fused-effects
interface is forthcoming.