diff --git a/library/Potoki/Core/Prelude.hs b/library/Potoki/Core/Prelude.hs
--- a/library/Potoki/Core/Prelude.hs
+++ b/library/Potoki/Core/Prelude.hs
@@ -123,6 +123,11 @@
 -------------------------
 import DeferredFolds.Unfoldr as Exports (Unfoldr(..))
 
+-- stm-chans
+-------------------------
+import Control.Concurrent.STM.TBMChan as Exports
+import Control.Concurrent.STM.TMChan as Exports
+
 --------------------------------------------------------------------------------
 
 import qualified Data.Text as A
diff --git a/library/Potoki/Core/Produce.hs b/library/Potoki/Core/Produce.hs
--- a/library/Potoki/Core/Produce.hs
+++ b/library/Potoki/Core/Produce.hs
@@ -13,6 +13,8 @@
   directoryContents,
   finiteMVar,
   infiniteMVar,
+  tbmChan,
+  tmChan,
   lazyByteString,
   enumInRange,
   mergeOrdering,
@@ -235,6 +237,16 @@
 infiniteMVar :: MVar element -> Produce element
 infiniteMVar var =
   Produce $ M.Acquire (return (A.infiniteMVar var, return ()))
+
+{-# INLINE tbmChan #-}
+tbmChan :: TBMChan element -> Produce element
+tbmChan chan = do
+  Produce $ return $ Fetch $ atomically $ readTBMChan chan
+
+{-# INLINE tmChan #-}
+tmChan :: TMChan element -> Produce element
+tmChan chan = do
+  Produce $ return $ Fetch $ atomically $ readTMChan chan
 
 {-# INLINE lazyByteString #-}
 lazyByteString :: D.ByteString -> Produce ByteString
diff --git a/potoki-core.cabal b/potoki-core.cabal
--- a/potoki-core.cabal
+++ b/potoki-core.cabal
@@ -1,5 +1,5 @@
 name: potoki-core
-version: 2.3.3
+version: 2.3.4
 synopsis: Low-level components of "potoki"
 description:
   Provides everything required for building custom instances of
@@ -50,7 +50,7 @@
     attoparsec >=0.13 && <0.15,
     base >=4.9 && <5,
     bytestring ==0.10.*,
-    deepseq >=1.4.3 && <2,
+    deepseq >=1.4 && <2,
     deferred-folds >=0.9.7.1 && <0.10,
     directory >=1.3 && <2,
     foldl >=1.3 && <2,
@@ -60,6 +60,7 @@
     ptr >=0.16.2 && <0.17,
     scanner >=0.3 && <0.4,
     stm >=2.5 && <2.6,
+    stm-chans >=3 && <3.1,
     text >=1 && <2,
     text-builder >=0.6.3 && <0.7,
     time >=1.5 && <2,
