diff --git a/Setup.hs b/Setup.hs
deleted file mode 100644
--- a/Setup.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Distribution.Simple
-main = defaultMain
diff --git a/shake-elm.cabal b/shake-elm.cabal
--- a/shake-elm.cabal
+++ b/shake-elm.cabal
@@ -1,6 +1,6 @@
 cabal-version: 1.18
 name: shake-elm
-version: 0.1.0.0
+version: 0.2.0.0
 license: BSD3
 license-file: LICENSE
 copyright: Copyright: (c) 2018 Vanessa McHale
diff --git a/src/Development/Shake/Elm.hs b/src/Development/Shake/Elm.hs
--- a/src/Development/Shake/Elm.hs
+++ b/src/Development/Shake/Elm.hs
@@ -6,9 +6,11 @@
 -- | Rules for calling @elm-make@.
 elmMake :: [FilePath] -- ^ Elm source files
         -> [FilePath] -- ^ Extra source files to be tracked
+        -> Bool -- ^ Toggle optimized build product
         -> FilePattern -- ^ Build output
         -> Rules ()
-elmMake sources extras fp =
+elmMake sources extras opt fp =
     fp %> \out -> do
         need (sources ++ extras)
-        command [] "elm-make" ("--yes" : "--output" : out : "--warn" : sources)
+        let go = if opt then ("--optimize":) else id
+        command [] "elm-make" (go ("--yes" : "--output" : out : "--warn" : sources))
