diff --git a/Control/Comonad/Store/MemoTrie.hs b/Control/Comonad/Store/MemoTrie.hs
--- a/Control/Comonad/Store/MemoTrie.hs
+++ b/Control/Comonad/Store/MemoTrie.hs
@@ -37,7 +37,10 @@
 import Control.Comonad.Env.Class
 import Control.Comonad.Traced.Class
 import Data.Functor.Identity
+import Data.Functor.Apply
 import Data.MemoTrie
+import Data.Semigroup
+import Data.Monoid
 
 #ifdef __GLASGOW_HASKELL__
 import Data.Typeable
@@ -75,6 +78,13 @@
 
 instance (Functor w, HasTrie s) => Functor (StoreT s w) where
   fmap f (StoreT wf s) = StoreT (fmap (fmap f) wf) s
+
+instance (Apply w, Semigroup s, HasTrie s) => Apply (StoreT s w) where
+  StoreT ff m <.> StoreT fa n = StoreT ((<*>) <$> ff <.> fa) (m <> n)
+
+instance (Applicative w, Semigroup s, Monoid s, HasTrie s) => Applicative (StoreT s w) where
+  pure a = StoreT (pure (pure a)) mempty
+  StoreT ff m <*> StoreT fa n = StoreT ((<*>) <$> ff <*> fa) (m `mappend` n)
 
 instance (Extend w, HasTrie s) => Extend (StoreT s w) where
   duplicate (StoreT wf s) = StoreT (extend (trie . StoreT) wf) s
diff --git a/comonad-extras.cabal b/comonad-extras.cabal
--- a/comonad-extras.cabal
+++ b/comonad-extras.cabal
@@ -1,6 +1,6 @@
 name:          comonad-extras
 category:      Control, Comonads
-version:       0.1.3
+version:       0.2
 license:       BSD3
 cabal-version: >= 1.6
 license-file:  LICENSE
@@ -26,12 +26,12 @@
     array >= 0.3.0.2 && < 0.4,
     base >= 4 && < 4.4,
     containers >= 0.4 && < 0.5,
-    comonad >= 1.0.1 && < 1.1,
-    comonad-transformers >= 1.5.0.1 && < 1.6,
-    comonads-fd >= 1.5.0.1 && < 1.6,
-    distributive >= 0.1 && < 0.2,
-    semigroupoids >= 1.0 && < 1.2,
-    semigroups >= 0.3.4 && < 0.4,
+    comonad >= 1.1 && < 1.2,
+    comonad-transformers >= 1.6.1 && < 1.7,
+    comonads-fd >= 1.6.1 && < 1.7,
+    distributive >= 0.2 && < 0.3,
+    semigroupoids >= 1.2.1 && < 1.3,
+    semigroups >= 0.5 && < 0.6,
     transformers >= 0.2.0 && <= 0.3,
     MemoTrie >= 0.4.9 && < 0.5
 
