The rascal package

[Tags:library, mit, program, test]

Rascal is a command-line client for Reddit with colors, configurable sorting, threaded comments, and some day most of Reddit's API available.

[Skip to Readme]


Versions 1.1.4, 1.1.5, 1.1.6
Dependencies aeson, ansi-terminal, base (==4.6.*), containers, curl, curl-aeson, directory, filepath, mtl, process (>=1.2), vector [details]
License MIT
Author Sylvain Soliman
Category Web
Home page
Source repository head: git clone git://
Uploaded Fri Jan 3 13:50:17 UTC 2014 by soli
Distributions NixOS:1.1.6
Downloads 776 total (19 in the last 30 days)
0 []
Status Docs not available [build log]
All reported builds failed as of 2016-12-19 [all 5 reports]
Hackage Matrix CI


Maintainer's Corner

For package maintainers and hackage trustees

Readme for rascal

Readme for rascal-1.1.4

.----.---.-.-----.----.---.-.|  |
|   _|  _  |__ --|  __|  _  ||  |
|__| |___._|_____|____|___._||__|

Build Status

rascal is a command-line client for reddit.

It should work on any platform where Haskell runs (Linux, Mac OSX and Windows through MinGW), and aims at making available the whole reddit API (we're not there yet…).

It sports colors, that should soon become configurable, and might not work under Windows (based on ANSI escape sequences, through ansi-terminal).

By default it will open /r/haskell sorted by "new", but you can provide another subreddit as argument on the command line

$ rascal python

It is also possible to define the default subreddit and the default sort option in an INI-style configuration file named .rascalrc in your HOME directory. For instance, it might contain the following (case-sensitive!):

subreddit: programming
linkSort = controversial
commentSort: new
pageComments = True

Here is what rascal looks like when started, and when a self link (marked with a '♦') is chosen (N was pressed in this case). Non-self links and links detected in posts will be opened in your default browser.


Comments are shown threaded, with the order defined in the configuration file (defaulting to new), and one page at a time if pageComments is true (default). Comments, like posts, are formatted to avoid cutting words when possible.



In case you wonder, my iTerm2 is using the dark solarized color scheme. The ASCII title was generated with figlet -f chunky. And the name comes from my own pronunciation of /r/haskell.

Planned Features

  • Configuration for colors
  • OAuth2 login to reddit (subscribed/saved/etc.)
  • more tests


Please note that rascal is my first Haskell project. As such, it is as much a fun experiment for me to discover the ecosystem and the idioms, than a really useful project. TL;DR: YMMV.