diff --git a/src/Graphics/Svg/Core.hs b/src/Graphics/Svg/Core.hs
--- a/src/Graphics/Svg/Core.hs
+++ b/src/Graphics/Svg/Core.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP               #-}
 {-# LANGUAGE FlexibleInstances #-}
 {-# LANGUAGE OverloadedStrings #-}
 {-# LANGUAGE TypeFamilies      #-}
@@ -39,7 +40,10 @@
 import           Data.Hashable (Hashable(..))
 import           Data.HashMap.Strict (HashMap)
 import qualified Data.HashMap.Strict as M
-import           Data.Monoid
+#if !MIN_VERSION_base(4,8,0)
+import           Data.Monoid (Monoid(..))
+#endif
+import           Data.Semigroup (Semigroup(..))
 import           Data.String
 import           Data.Text (Text)
 import qualified Data.Text.Lazy as LT
@@ -61,9 +65,14 @@
 instance Show Element where
   show e = LT.unpack . renderText $ e
 
+instance Semigroup Element where
+  Element e1 <> Element e2 = Element (e1 <> e2)
+
 instance Monoid Element where
   mempty = Element mempty
-  mappend (Element e1) (Element e2) = Element (e1 <> e2)
+#if !(MIN_VERSION_base(4,11,0))
+  mappend = (<>)
+#endif
 
 instance IsString Element where
   fromString = toElement
@@ -140,7 +149,7 @@
 
 -- | Folding and monoidally appending attributes.
 foldlMapWithKey :: Monoid m => (k -> v -> m) -> HashMap k v -> m
-foldlMapWithKey f = M.foldlWithKey' (\m k v -> m <> f k v) mempty
+foldlMapWithKey f = M.foldlWithKey' (\m k v -> m `mappend` f k v) mempty
 
 s2b :: String -> Builder
 s2b = BB.fromString
diff --git a/svg-builder.cabal b/svg-builder.cabal
--- a/svg-builder.cabal
+++ b/svg-builder.cabal
@@ -1,8 +1,8 @@
 name:                svg-builder
-version:             0.1.0.2
+version:             0.1.1
 synopsis:            DSL for building SVG.
 description:         Fast, easy to write SVG.
-homepage:            http://github.com/jeffreyrosenbluth/svg-builder.git
+homepage:            https://github.com/diagrams/svg-builder.git
 license:             BSD3
 license-file:        LICENSE
 author:              Jeffrey Rosenbluth
@@ -13,6 +13,10 @@
 extra-source-files:  README.md
 cabal-version:       >=1.10
 
+source-repository head
+  type:     git
+  location: https://github.com/diagrams/svg-builder.git
+
 library
   ghc-options:         -Wall -fsimpl-tick-factor=200
   exposed-modules:     Graphics.Svg,
@@ -20,11 +24,13 @@
                        Graphics.Svg.Path,
                        Graphics.Svg.Elements,
                        Graphics.Svg.Attributes
-  build-depends:       base                  >= 4.5   && < 4.10,
+  build-depends:       base                  >= 4.5   && < 4.12,
                        blaze-builder         >= 0.4   && < 0.5,
                        bytestring            >= 0.10  && < 0.11,
                        hashable              >= 1.1   && < 1.3,
                        text                  >= 0.11  && < 1.3,
                        unordered-containers  >= 0.2 && < 0.3
+  if !impl(ghc >= 8.0)
+    build-depends:     semigroups            >= 0.16.1 && < 0.19
   hs-source-dirs:      src
   default-language:    Haskell2010
