diff --git a/simple-ui.cabal b/simple-ui.cabal
--- a/simple-ui.cabal
+++ b/simple-ui.cabal
@@ -1,6 +1,6 @@
 name:               simple-ui
-version:            0.1.2
-cabal-version:      >=1.22
+version:            0.2.0
+cabal-version:      1.22
 build-type:         Simple
 author:             Piotr Borek <piotrborek@op.pl>
 maintainer:         Piotr Borek <piotrborek@op.pl>
@@ -29,10 +29,10 @@
         mtl                (>= 2.2 && < 2.3),
         exceptions         (>= 0.8 && < 0.11),
         vty                (>= 5.16 && < 6),
-        lens               (>= 4.15 && < 4.18),
+        lens               (>= 4.15 && < 4.20),
         vector             (>= 0.11 && < 0.13),
         data-default-class (>= 0.1 && < 0.2),
-        template-haskell   (>= 2.11 && < 2.15),
+        template-haskell   (>= 2.11 && < 2.17),
         stm                (>= 2.4 && < 2.6)
 
     exposed-modules:
diff --git a/src/Simple/UI/Core/UIApp.hs b/src/Simple/UI/Core/UIApp.hs
--- a/src/Simple/UI/Core/UIApp.hs
+++ b/src/Simple/UI/Core/UIApp.hs
@@ -103,7 +103,7 @@
     vty <- view appVty
     tasks <- view appTasks
 
-    (width, height) <- Vty.displayBounds (Vty.outputIface vty)
+    (width, height) <- liftIO $ Vty.displayBounds (Vty.outputIface vty)
     mainResize width height
     mainDraw
 
diff --git a/stack.yaml b/stack.yaml
--- a/stack.yaml
+++ b/stack.yaml
@@ -1,4 +1,4 @@
-resolver: lts-13.18
+resolver: lts-17.14
 packages:
 - '.'
 flags: {}
