diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+## 0.2.1
+
+- Support `aeson-2.0.0.0`
+
 ## 0.2
 
 - Change the pretty printing to use less horizontal space.
diff --git a/src/Data/TreeDiff/Class.hs b/src/Data/TreeDiff/Class.hs
--- a/src/Data/TreeDiff/Class.hs
+++ b/src/Data/TreeDiff/Class.hs
@@ -24,10 +24,10 @@
 import Data.List.Compat (uncons)
 import Data.Proxy       (Proxy (..))
 import GHC.Generics
-       ((:*:) (..), (:+:) (..), Constructor (..), Generic (..), K1 (..),
-       M1 (..), Selector (..), U1 (..), V1)
+       (Constructor (..), Generic (..), K1 (..), M1 (..), Selector (..),
+       U1 (..), V1, (:*:) (..), (:+:) (..))
 
-import qualified Data.Map as Map
+import qualified Data.Map           as Map
 import qualified Data.TreeDiff.OMap as OMap
 
 import Data.TreeDiff.Expr
@@ -94,6 +94,10 @@
 
 -- aeson
 import qualified Data.Aeson as Aeson
+#if MIN_VERSION_aeson(2,0,0)
+import qualified Data.Aeson.Key    as Key
+import qualified Data.Aeson.KeyMap as KM
+#endif
 
 -- strict
 import qualified Data.Strict as Strict
@@ -549,6 +553,14 @@
 -------------------------------------------------------------------------------
 
 instance ToExpr Aeson.Value
+
+#if MIN_VERSION_aeson(2,0,0)
+instance ToExpr Key.Key where
+    toExpr = stringToExpr "Key.concat" . unconcat T.uncons . Key.toText
+
+instance ToExpr a => ToExpr (KM.KeyMap a) where
+    toExpr x = App "KM.fromList" [ toExpr $ KM.toList x ]
+#endif
 
 -------------------------------------------------------------------------------
 -- strict
diff --git a/tree-diff.cabal b/tree-diff.cabal
--- a/tree-diff.cabal
+++ b/tree-diff.cabal
@@ -1,6 +1,6 @@
 cabal-version:      2.2
 name:               tree-diff
-version:            0.2
+version:            0.2.1
 synopsis:           Diffing of (expression) trees.
 category:           Data, Testing
 description:
@@ -93,10 +93,10 @@
     , time        ^>=1.4 || ^>=1.5.0.1 || ^>=1.6.0.1 || ^>=1.8.0.2 || ^>=1.9.3
 
   build-depends:
-    , aeson                 ^>=1.4.6.0 || ^>=1.5.6.0
+    , aeson                 ^>=1.4.6.0 || ^>=1.5.6.0 || ^>=2.0.0.0
     , ansi-terminal         >=0.10       && <0.12
     , ansi-wl-pprint        ^>=0.6.8.2
-    , base-compat           ^>=0.10.5 || ^>=0.11.0
+    , base-compat           ^>=0.10.5 || ^>=0.11.0 || ^>=0.12
     , bytestring-builder    ^>=0.10.8.2.0
     , hashable              ^>=1.2.7.0 || ^>=1.3.0.0
     , parsers               ^>=0.12.10
@@ -164,7 +164,7 @@
 
   -- extra dependencies
   build-depends:
-    , tasty             ^>=1.2 || ^>=1.3.1
+    , tasty             ^>=1.2 || ^>=1.3.1 || ^>=1.4.2
     , tasty-golden      ^>=2.3.1.1
     , tasty-quickcheck  ^>=0.10.1
     , trifecta          >=2       && <2.2
