h2048: a haskell implementation of Game 2048

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] [Publish]


A haskell implementation of Game 2048, based on https://github.com/gabrielecirulli/2048.

[Skip to Readme]


Change log CHANGELOG.md
Dependencies base (==4.*), MonadRandom (==0.*), mtl (==2.*), text (==1.*), transformers (==0.*), vty (>=4 && <6), vty-ui (==1.*) [details]
License MIT
Copyright Copyright (c) 2014 Javran Cheng
Author Javran Cheng
Maintainer Javran.C@gmail.com
Category Game
Home page https://github.com/Javran/h2048
Uploaded by javran at 2014-10-15T03:19:03Z


Manual Flags

Automatic Flags

build executables


build UI written in vty-ui


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees

Readme for h2048-

[back to package description]


Build Status

A haskell implementation of Game 2048. Including:

Based on 2048


Simple CLI version

vty CLI version

Build and run

With cabal

h2048 is now available on hackage.

If you have Cabal installed, you can use the following command to install this project:

cabal update
cabal install h2048

The binaries are h2048-simple for simple CLI version, h2048-vty for CLI version implemented using vty-ui.


If you just want the functionality of this library, you can turn off flag exe. If you have trouble building the vty CLI version, you can try to turn off flag vty.

An example for turning off flag vty:

# if you are installing package from hackage:
cabal install --flag="-vty"

# or if you are building from the github repo
cabal configure --flag="-vty"
cabal build

Without cabal

First make sure the following dependencies are installed:

In addition, if you want to play with vty CLI version, the following dependencies are also required:

You can use following commands to run the program without cabal:

cd src # assume your working directory is the project home.
# to play the simple CLI version
runhaskell MainSimple.hs
# to play the vty CLI version
runhaskell MainVty.hs

How to play


If you are using h2048-vty, you can also use arrow keys.