✏️ 📊 - The Haskell code editor focused on interactive development.
Clone or download
Latest commit f339e57 Feb 10, 2018
Failed to load latest commit information.
static/out.jsexe (25) Fixes #25 Aug 24, 2017
.travis.yml Merge pull request #126 from ocramz/master Dec 26, 2017
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Jun 14, 2017
LICENSE Add license Jun 6, 2017
NOTICE Restructure the project Apr 5, 2017
client-stack.yaml (111) save code every x seconds Aug 13, 2017
package.yaml Bump to 0.9.5 Aug 13, 2017



Gitter Build Status Open Source Helpers

haskell.do is a Haskell code editor, centered around interactive development. You can get it on the website.

Pull Requests are greatly appreciated, check out our contributing guidelines.

Building from source

The only 3rd-party requirements to build haskell.do are Stack and NodeJS (due to GHCJS).

git clone https://github.com/theam/haskell-do && cd haskell-do

stack setup --stack-yaml=client-stack.yaml to setup GHCJS (note that it isn't supported on Windows)

stack Build.hs -h for detailed usage of the build file.

stack Build.hs -a for building project.

stack Build.hs -r for running haskell.do on port 8080.


haskell-do can be executed within a Docker container. For convenience, the building and execution commands are provided within the Makefile.

NB : These instructions assume the user has already created a docker machine called "dev".

NB 2 : OSX users usually need to run the following command to configure VirtualBox in order to set up port forwarding:

VBoxManage modifyvm "dev" --natpf1 "tcp-port8080,tcp,,8080,,8080"

Once that is done, Docker can be configured and started:

docker-machine start dev

eval $(docker-machine env dev)

Then, the haskell-do image can be built and run:

make docker

make docker-run

If everything went well, it is now possible to point a browser to http://localhost:8080 and work with haskell-do.


Would you like to contribute? Make sure that you've read our contributor guidelines. We'd like to hear from you and your ideas, get in touch with other contributors through: