diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+# 0.2.0.1
+
+* build with vty 5 and vty-ui 1.8 (thanks to @vikraman)
+
 # 0.2.0.0
 
 * conditional flags: `exe` and `vty`
diff --git a/h2048.cabal b/h2048.cabal
--- a/h2048.cabal
+++ b/h2048.cabal
@@ -2,7 +2,7 @@
 --  see http://haskell.org/cabal/users-guide/
 
 name:                h2048
-version:             0.2.0.0
+version:             0.2.0.1
 synopsis:            a haskell implementation of Game 2048
 description:
 
@@ -44,8 +44,8 @@
                        mtl >= 2 && < 3,
                        MonadRandom >= 0 && < 1,
                        text >= 1 && < 2,
-                       vty >= 4 && < 6,
-                       vty-ui >= 1 && < 2
+                       vty >= 5 && < 6,
+                       vty-ui >= 1.8 && < 2
 
   ghc-options:         -Wall
   default-language:    Haskell2010
@@ -67,11 +67,11 @@
 executable h2048-vty
   hs-source-dirs:      src
   main-is:             MainVty.hs
-  ghc-options:         -Wall
+  ghc-options:         -Wall -threaded
   build-depends:       base >= 4 && < 5,
                        text >= 1 && < 2,
-                       vty >= 4 && < 6,
-                       vty-ui >= 1 && < 2,
+                       vty >= 5 && < 6,
+                       vty-ui >= 1.8 && < 2,
                        transformers >= 0 && < 1,
                        mtl >= 2 && < 3,
                        MonadRandom >= 0 && < 1
diff --git a/src/Game/H2048/UI/Vty.hs b/src/Game/H2048/UI/Vty.hs
--- a/src/Game/H2048/UI/Vty.hs
+++ b/src/Game/H2048/UI/Vty.hs
@@ -183,21 +183,21 @@
 
     pScore `onKeyPressed` \_ key _ ->
         case key of
-          KASCII 'q' ->
+          KChar 'q' ->
               shutdownUi >> return True
-          KASCII 'i' ->
+          KChar 'i' ->
               doUpdate DUp
           KUp ->
               doUpdate DUp
-          KASCII 'k' ->
+          KChar 'k' ->
               doUpdate DDown
           KDown ->
               doUpdate DDown
-          KASCII 'j' ->
+          KChar 'j' ->
               doUpdate DLeft
           KLeft ->
               doUpdate DLeft
-          KASCII 'l' ->
+          KChar 'l' ->
               doUpdate DRight
           KRight ->
               doUpdate DRight
