diff --git a/Data/SmallString.hs b/Data/SmallString.hs
--- a/Data/SmallString.hs
+++ b/Data/SmallString.hs
@@ -41,6 +41,8 @@
 import Foreign.Ptr (Ptr, plusPtr)
 import Foreign.Storable (poke)
 
+import Data.Hashable as H
+
 -- | A space efficient representation of Unicode text.
 newtype SmallString = SmallString (A.Array Word8)
 
@@ -58,6 +60,9 @@
 
 instance S.IsString SmallString where
     fromString = fromString
+
+instance H.Hashable SmallString where
+    hash (SmallString arr) = H.hash arr
 
 compareSmallString :: SmallString -> SmallString -> Ordering
 compareSmallString (SmallString lhsAry) (SmallString rhsAry)
diff --git a/smallstring.cabal b/smallstring.cabal
--- a/smallstring.cabal
+++ b/smallstring.cabal
@@ -1,5 +1,5 @@
 Name:                smallstring
-Version:             0.2.0
+Version:             0.3.0
 Synopsis:            A Unicode text type, optimized for low memory overhead
 Description:         A Unicode text type, optimized for low memory overhead.
                      No string manipulation functions are offered.
@@ -15,7 +15,12 @@
 Build-type:          Simple
 Cabal-version:       >=1.6
 
+source-repository head
+ type:     darcs
+ location: http://community.haskell.org/~aslatter/code/smallstring
+
 Library
-  Build-depends:       base == 4.*, utf8-string == 0.3.*, smallarray == 0.1.*,
-                       deepseq == 1.1.*, bytestring == 0.9.*, text == 0.11.*
+  Build-depends:       base == 4.*, utf8-string == 0.3.*, smallarray == 0.2.*,
+                       deepseq == 1.1.*, bytestring == 0.9.*, text == 0.11.*,
+                       hashable < 1.1 && >= 1.0.1
   Exposed-modules:     Data.SmallString
