diff --git a/gore-and-ash-logging.cabal b/gore-and-ash-logging.cabal
--- a/gore-and-ash-logging.cabal
+++ b/gore-and-ash-logging.cabal
@@ -1,5 +1,5 @@
 name:                gore-and-ash-logging
-version:             1.1.1.0
+version:             1.2.1.0
 synopsis:            Core module for gore-and-ash with logging utilities
 description:         Please see README.md
 homepage:            https://github.com/Teaspot-Studio/gore-and-ash-logging
@@ -26,10 +26,12 @@
                      , exceptions >= 0.8.0.2
                      , gore-and-ash >= 1.1.0.0
                      , mtl >= 2.2
+                     , resourcet >= 1.1.7.1
                      , text >= 1.2.1
                      , text-show >= 2
                      , transformers >= 0.4.2
-                     
+                     , transformers-base >= 0.4.4
+
   default-extensions:  
                        DataKinds
                        DeriveGeneric
diff --git a/src/Game/GoreAndAsh/Logging/Module.hs b/src/Game/GoreAndAsh/Logging/Module.hs
--- a/src/Game/GoreAndAsh/Logging/Module.hs
+++ b/src/Game/GoreAndAsh/Logging/Module.hs
@@ -15,12 +15,15 @@
     LoggingT(..)
   ) where
 
+import Control.Monad.Base
 import Control.Monad.Catch
+import Control.Monad.Error.Class
 import Control.Monad.Fix 
 import Control.Monad.State.Strict
+import Control.Monad.Trans.Resource
+import Data.Proxy 
 import qualified Data.Sequence as S
 import qualified Data.Text.IO as T
-import Data.Proxy 
 
 import Game.GoreAndAsh
 import Game.GoreAndAsh.Logging.State
@@ -45,8 +48,14 @@
 -- The module is pure within first phase (see 'ModuleStack' docs) and could be used
 -- with 'Identity' end monad.
 newtype LoggingT s m a = LoggingT { runLoggingT :: StateT (LoggingState s) m a }
-  deriving (Functor, Applicative, Monad, MonadState (LoggingState s), MonadFix, MonadTrans, MonadIO, MonadThrow, MonadCatch, MonadMask)
+  deriving (Functor, Applicative, Monad, MonadState (LoggingState s), MonadFix, MonadTrans, MonadIO, MonadThrow, MonadCatch, MonadMask, MonadError e)
 
+instance MonadBase IO m => MonadBase IO (LoggingT s m) where
+  liftBase = LoggingT . liftBase
+
+instance MonadResource m => MonadResource (LoggingT s m) where 
+  liftResourceT = LoggingT . liftResourceT 
+  
 instance GameModule m s => GameModule (LoggingT s m) (LoggingState s) where 
   type ModuleState (LoggingT s m) = LoggingState s
   runModule (LoggingT m) s = do
