diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,4 @@
 # Changelog for streaming-nonempty
 
 ## Unreleased changes
+* 0.1.0.1 add map and other basic API
diff --git a/src/Streaming/NonEmpty.hs b/src/Streaming/NonEmpty.hs
--- a/src/Streaming/NonEmpty.hs
+++ b/src/Streaming/NonEmpty.hs
@@ -10,12 +10,13 @@
 import Data.Eq ((==))
 import Data.Function (($))
 import Data.Functor (Functor, fmap, (<$>))
-import Data.List.NonEmpty hiding (groupBy)
+import Data.List.NonEmpty hiding (groupBy, map)
 import Data.Semigroup (Semigroup, (<>))
 import qualified Data.Semigroup as Semigroup
 import Streaming (Of ((:>)), Stream, first, runIdentity, wrap)
 import Streaming.Internal
 import qualified Streaming.Prelude as S
+import Prelude hiding ((.), map, id)
 
 -- | A stream with at least one functorial layer
 newtype NEStream f m a = NEStream (f (Stream f m a)) deriving (Functor)
@@ -23,6 +24,10 @@
 -- | Is a stream
 toStream :: (Functor f, Monad m) => NEStream f m r -> Stream f m r
 toStream (NEStream f) = wrap f
+
+map :: Monad m => (t -> b) -> NEStream (Of t) m a -> NEStream (Of b) m a
+map f (NEStream (x :> s)) = NEStream (f x :> S.map f s)
+
 
 -- | fold1 is safe
 fold1 :: Monad m => (a -> a -> a) -> NEStream (Of a) m r -> m (Of a r)
diff --git a/streaming-nonempty.cabal b/streaming-nonempty.cabal
--- a/streaming-nonempty.cabal
+++ b/streaming-nonempty.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           streaming-nonempty
-version:        0.1.0.0
+version:        0.1.0.1
 synopsis:       Add support for non empty streams to Streaming lib
 description:    Please see the README on GitHub at <https://gitlab.com/paolo.veronelli/streaming-nonempty/-/blob/master/README.md>
 category:       Streaming
