diff --git a/genvalidity-aeson.cabal b/genvalidity-aeson.cabal
--- a/genvalidity-aeson.cabal
+++ b/genvalidity-aeson.cabal
@@ -1,11 +1,13 @@
--- This file has been generated from package.yaml by hpack version 0.28.2.
+cabal-version: 1.12
+
+-- This file has been generated from package.yaml by hpack version 0.31.1.
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: a2fade241a7351ac096d70af2464abafbf1e913c4a2eeeebc07b99add7ddeb10
+-- hash: d45a5c5de46da85d9d5f805bc0b5b69757c4d185ca5656d39b3c8225a0df0bb5
 
 name:           genvalidity-aeson
-version:        0.2.0.2
+version:        0.3.0.0
 synopsis:       GenValidity support for aeson
 description:    Please see README.md
 category:       Testing
@@ -14,39 +16,41 @@
 author:         Tom Sydney Kerckhove
 maintainer:     syd.kerckhove@gmail.com,
                 nick.van.den.broeck666@gmail.com
-copyright:      Copyright: (c) 2017-2018 Tom Sydney Kerckhove
+copyright:      Copyright: (c) 2017-2019 Tom Sydney Kerckhove
 license:        MIT
 license-file:   LICENSE
 build-type:     Simple
-cabal-version:  >= 1.10
 
 source-repository head
   type: git
   location: https://github.com/NorfairKing/validity
 
 library
+  exposed-modules:
+      Data.GenValidity.Aeson
+  other-modules:
+      Paths_genvalidity_aeson
   hs-source-dirs:
       src
   build-depends:
       QuickCheck
     , aeson
     , base <5
-    , genvalidity >=0.5
+    , genvalidity >=0.8
     , genvalidity-scientific >=0.2
     , genvalidity-text >=0.5
     , genvalidity-unordered-containers >=0.2
     , genvalidity-vector >=0.2
     , validity >=0.5
     , validity-aeson >=0.2
-  exposed-modules:
-      Data.GenValidity.Aeson
-  other-modules:
-      Paths_genvalidity_aeson
   default-language: Haskell2010
 
 test-suite genvalidity-aeson-test
   type: exitcode-stdio-1.0
   main-is: Spec.hs
+  other-modules:
+      Test.Validity.AesonSpec
+      Paths_genvalidity_aeson
   hs-source-dirs:
       test/
   ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall
@@ -57,7 +61,4 @@
     , genvalidity-aeson
     , genvalidity-hspec
     , hspec
-  other-modules:
-      Test.Validity.AesonSpec
-      Paths_genvalidity_aeson
   default-language: Haskell2010
diff --git a/src/Data/GenValidity/Aeson.hs b/src/Data/GenValidity/Aeson.hs
--- a/src/Data/GenValidity/Aeson.hs
+++ b/src/Data/GenValidity/Aeson.hs
@@ -17,27 +17,6 @@
 
 import Test.QuickCheck
 
-instance GenUnchecked Value where
-    genUnchecked =
-        oneof
-            [ Object <$> genUnchecked
-            , Array <$> genUnchecked
-            , String <$> genUnchecked
-            , Number <$> genUnchecked
-            , Bool <$> genUnchecked
-            , pure Null
-            ]
-    shrinkUnchecked (Object hm) =
-        (Object <$> shrinkUnchecked hm) ++
-        toList hm ++ concatMap shrinkUnchecked (toList hm)
-    shrinkUnchecked (Array a) =
-        (Array <$> shrinkUnchecked a) ++
-        toList a ++ concatMap shrinkUnchecked (toList a)
-    shrinkUnchecked (String s) = String <$> shrinkUnchecked s
-    shrinkUnchecked (Number s) = Number <$> shrinkUnchecked s
-    shrinkUnchecked (Bool s) = Bool <$> shrinkUnchecked s
-    shrinkUnchecked Null = []
-
 instance GenValid Value where
     genValid =
         oneof
@@ -48,8 +27,13 @@
             , Bool <$> genValid
             , pure Null
             ]
-
-instance GenInvalid Value where
-    genInvalid =
-        oneof
-            [Object <$> genInvalid, Array <$> genInvalid, String <$> genInvalid]
+    shrinkValid (Object hm) =
+        (Object <$> shrinkValid hm) ++
+        toList hm ++ concatMap shrinkValid (toList hm)
+    shrinkValid (Array a) =
+        (Array <$> shrinkValid a) ++
+        toList a ++ concatMap shrinkValid (toList a)
+    shrinkValid (String s) = String <$> shrinkValid s
+    shrinkValid (Number s) = Number <$> shrinkValid s
+    shrinkValid (Bool s) = Bool <$> shrinkValid s
+    shrinkValid Null = []
diff --git a/test/Test/Validity/AesonSpec.hs b/test/Test/Validity/AesonSpec.hs
--- a/test/Test/Validity/AesonSpec.hs
+++ b/test/Test/Validity/AesonSpec.hs
@@ -9,4 +9,4 @@
 import Test.Validity.GenValidity
 
 spec :: Spec
-spec = genValiditySpec @Value
+spec = genValidSpec @Value
