diff --git a/snaplet-coffee.cabal b/snaplet-coffee.cabal
--- a/snaplet-coffee.cabal
+++ b/snaplet-coffee.cabal
@@ -2,17 +2,19 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                snaplet-coffee
-version:             0.1.0.0
--- synopsis:
-description:         A simple snaplet based off of 'snaplet-fay'
-                     but for CoffeeScript.
+version:             0.1.0.1
+synopsis:            CoffeeScript for Snap, auto-compilation and pre-compilation.
+description:         A simple snaplet based off of 'snaplet-fay' but for CoffeeScript.
 license:             GPL-3
 license-file:        LICENSE
 author:              Kevin van Rooijen
 maintainer:          kevin.van.rooijen@gmail.com
 copyright:           Copyright (C) 2013 Kevin van Rooijen
-category:            Snap
+category:            Web, Snap
 build-type:          Simple
+homepage:            https://github.com/AtticHacker/snaplet-coffee
+bug-reports:         https://github.com/AtticHacker/snaplet-coffee/issues
+
 cabal-version:       >=1.8
 
 data-files:
diff --git a/src/Snap/Snaplet/Coffee.hs b/src/Snap/Snaplet/Coffee.hs
--- a/src/Snap/Snaplet/Coffee.hs
+++ b/src/Snap/Snaplet/Coffee.hs
@@ -19,6 +19,7 @@
 import           Control.Monad (liftM)
 import           Paths_snaplet_coffee
 
+-- | Snaplet-Coffee initializer
 initCoffee :: SnapletInit c CoffeeScript
 initCoffee = makeSnaplet "coffee" "description" dataDir $ do
     config <- getSnapletUserConfig
@@ -35,6 +36,7 @@
   where dataDir = Just $ liftM (++ "/resources") getDataDir
         configOptions = ["compilerPath", "compilerMode", "destinationPath"]
 
+-- | Serves the compiled CoffeeScript files
 coffeeServe :: Handler b CoffeeScript ()
 coffeeServe = do
     modifyResponse . setContentType $ "text/javascript;charset=utf-8"
@@ -44,6 +46,7 @@
     when (Development == compileMode cfg) $ liftIO $ compileFiles cfg [requestedFile]
     serveDirectory $ destinationDir cfg
 
+-- | Compiles the files that are being served, but ignores all other files.
 compileFiles :: MonadIO m => CoffeeScript -> [FilePath] -> m ()
 compileFiles cfg fp = do
     let coffeeStruct = Coffee (compiler cfg) False
diff --git a/src/Snap/Snaplet/Coffee/Utils.hs b/src/Snap/Snaplet/Coffee/Utils.hs
--- a/src/Snap/Snaplet/Coffee/Utils.hs
+++ b/src/Snap/Snaplet/Coffee/Utils.hs
@@ -14,6 +14,7 @@
 import System.Directory
 import System.FilePath
 
+-- | Simple data structure for CompileMode
 data CompileMode = Development | Production deriving (Show, Eq)
 
 -- | The CoffeeScript Snaplet Configuration
@@ -24,41 +25,49 @@
     , destinationDir  :: FilePath
     } deriving (Show)
 
+-- | Gets all the .coffee files in the source directory
 allCoffeeFiles :: CoffeeScript -> IO [FilePath]
 allCoffeeFiles cfg = do
     let p = srcDir cfg
     a <- getDirectoryContents p
     return $ map (</> srcDir cfg) $ filterCoffee a
 
+-- | Simple reverse taker
 takeReverse :: Int -> [a] -> [a]
 takeReverse i = reverse . take i . reverse
 
+-- | Filters the .coffee files
 filterCoffee :: [String] -> [String]
 filterCoffee = filter ((==) ".coffee" . takeReverse 7)
 
+-- | Source directory
 srcDir :: CoffeeScript -> FilePath
 srcDir = (</> "coffee") . snapletFilePath
 
+-- | Destination directory
 destDir :: CoffeeScript -> FilePath
 destDir = (</> "js") . snapletFilePath
 
+-- | Function to create directories if they don't exist
 createDirUnlessExists :: FilePath -> IO ()
 createDirUnlessExists fp = do
     dirExists <- doesDirectoryExist fp
     unless dirExists $ createDirectory fp
 
+-- | Gets the CompileMode
 getCompilerMode :: Maybe String -> CompileMode
 getCompilerMode Nothing              = Production
 getCompilerMode (Just "Development") = Development
 getCompilerMode (Just "Production")  = Production
 getCompilerMode (Just x)             = error $ x ++ " is not a valid Compiler mode for snaplet-coffeescript. -- devel.cfg"
 
+-- | Gets the destination directory
 getDestDir :: Maybe String -> CoffeeScript -> FilePath
 getDestDir Nothing   c = destDir c
 getDestDir (Just "") c = destDir c
 getDestDir (Just x)  _ = x
 
-
+-- | Converts path/to/file.js to file.coffee
 requestedCoffeeFile :: String -> FilePath
 requestedCoffeeFile =
      ("/"++) . (++"coffee") . reverse .dropWhile con2 . takeWhile con1 . reverse
