diff --git a/Web/Routes/Quasi/Parse.hs b/Web/Routes/Quasi/Parse.hs
--- a/Web/Routes/Quasi/Parse.hs
+++ b/Web/Routes/Quasi/Parse.hs
@@ -3,7 +3,9 @@
 module Web.Routes.Quasi.Parse
     ( -- * Quasi quoter
       parseRoutes
+    , parseRoutesFile
     , parseRoutesNoCheck
+    , parseRoutesFileNoCheck
     , Resource (..)
     , Piece (..)
     ) where
@@ -12,6 +14,7 @@
 import Language.Haskell.TH.Quote
 import Data.Data
 import Data.Maybe
+import qualified System.IO as SIO
 
 -- | A quasi-quoter to parse a string into a list of 'Resource's. Checks for
 -- overlapping routes, failing if present; use 'parseRoutesNoCheck' to skip the
@@ -28,6 +31,22 @@
             [] -> lift res
             z -> error $ "Overlapping routes: " ++ unlines (map show z)
     y = dataToPatQ (const Nothing) . resourcesFromString
+
+parseRoutesFile :: FilePath -> Q Exp
+parseRoutesFile fp = do
+    s <- qRunIO $ readUtf8File fp
+    quoteExp parseRoutes s
+
+parseRoutesFileNoCheck :: FilePath -> Q Exp
+parseRoutesFileNoCheck fp = do
+    s <- qRunIO $ readUtf8File fp
+    quoteExp parseRoutesNoCheck s
+
+readUtf8File :: FilePath -> IO String
+readUtf8File fp = do
+    h <- SIO.openFile fp SIO.ReadMode
+    SIO.hSetEncoding h SIO.utf8_bom
+    SIO.hGetContents h
 
 -- | Same as 'parseRoutes', but performs no overlap checking.
 parseRoutesNoCheck :: QuasiQuoter
diff --git a/web-routes-quasi.cabal b/web-routes-quasi.cabal
--- a/web-routes-quasi.cabal
+++ b/web-routes-quasi.cabal
@@ -1,11 +1,11 @@
 name:            web-routes-quasi
-version:         0.6.2
+version:         0.6.3
 license:         BSD3
 license-file:    LICENSE
 author:          Michael Snoyman <michael@snoyman.com>
 maintainer:      Michael Snoyman <michael@snoyman.com>
 synopsis:        Define data types and parse/build functions for web-routes via a quasi-quoted DSL
-category:        Web
+category:        Web, Yesod
 stability:       unstable
 cabal-version:   >= 1.6
 build-type:      Simple
@@ -17,7 +17,7 @@
 
 library
     build-depends:   base             >= 4       && < 5
-                   , template-haskell >= 2.4     && < 2.6
+                   , template-haskell
                    , text             >= 0.5     && < 0.12
     exposed-modules: Web.Routes.Quasi
                      Web.Routes.Quasi.Classes
