diff --git a/app/Main.hs b/app/Main.hs
--- a/app/Main.hs
+++ b/app/Main.hs
@@ -1,12 +1,6 @@
-{-# language TemplateHaskell #-}
 module Main where
 
-import IncludeEnv.TH (includeEnv)
-
-$(includeEnv "SHELL" "shl")
-shl :: String
-
 main :: IO ()
-main = putStrLn $ unwords ["your current shell :", shl] 
+main = putStrLn "include-env"
 
 
diff --git a/include-env.cabal b/include-env.cabal
--- a/include-env.cabal
+++ b/include-env.cabal
@@ -1,5 +1,5 @@
 name:                include-env
-version:             0.1.1.0
+version:             0.1.2.0
 synopsis:            Include the value of an environment variable at compile time
 description:         Embed secrets (e.g. API keys) inside production artifacts without checking them into the repository.
 homepage:            https://github.com/unfoldml/include-env
diff --git a/src/IncludeEnv/TH.hs b/src/IncludeEnv/TH.hs
--- a/src/IncludeEnv/TH.hs
+++ b/src/IncludeEnv/TH.hs
@@ -1,10 +1,22 @@
 {-# language TemplateHaskell #-}
 {-# options_ghc -Wno-unused-imports #-}
 {-|
-Include the value of an environment variable at compile time
+Include the value of an environment variable in the binary at compile time.
 
 == Rationale
-The first use case for this library is to embed secrets (e.g. API keys) inside production artifacts without checking them into the repository.
+Users might want to embed secrets (e.g. API keys, database connection strings) inside production artifacts without checking these into the repository.
+
+== Example
+
+@
+import IncludeEnv.TH (includeEnv)
+
+$(`includeEnv` \"SHELL\" "shl")
+shl :: String
+
+main :: IO ()
+main = putStrLn $ unwords ["your current shell :", shl]
+@
 
 -}
 module IncludeEnv.TH (includeEnv) where
