diff --git a/ChangeLog.md b/ChangeLog.md
new file mode 100644
--- /dev/null
+++ b/ChangeLog.md
@@ -0,0 +1,5 @@
+# Changelog for version-natural
+
+## v0.1.0.0
+
+* Simple Natural based version type.
diff --git a/LICENSE b/LICENSE
new file mode 100644
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,30 @@
+Copyright Homotopic.Tech Ltd (c) 2023
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+
+    * Redistributions in binary form must reproduce the above
+      copyright notice, this list of conditions and the following
+      disclaimer in the documentation and/or other materials provided
+      with the distribution.
+
+    * Neither the name of Author name here nor the names of other
+      contributors may be used to endorse or promote products derived
+      from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/README.md b/README.md
new file mode 100644
--- /dev/null
+++ b/README.md
@@ -0,0 +1,16 @@
+# version-natural
+
+A simple version type which is a list of Naturals.
+
+## Building
+
+```
+nix build
+```
+
+## Development
+
+```
+nix develop
+cabal test all
+```
diff --git a/src/Data/Version/Natural.hs b/src/Data/Version/Natural.hs
new file mode 100644
--- /dev/null
+++ b/src/Data/Version/Natural.hs
@@ -0,0 +1,18 @@
+{-# LANGUAGE OverloadedStrings #-}
+module Data.Version.Natural
+ ( Version(MkVersion, fromVersion)
+ , toText
+ ) where
+
+import           Data.Kind       (Type)
+import           Data.Text       (Text)
+import qualified Data.Text       as T (intercalate, pack)
+import           GHC.Generics    (Generic)
+import           Numeric.Natural (Natural)
+
+type Version :: Type
+newtype Version = MkVersion { fromVersion :: [Natural] }
+  deriving stock (Eq, Generic, Ord, Show)
+
+toText :: Version -> Text
+toText = T.intercalate "." . map (T.pack . show) . fromVersion
diff --git a/version-natural.cabal b/version-natural.cabal
new file mode 100644
--- /dev/null
+++ b/version-natural.cabal
@@ -0,0 +1,37 @@
+cabal-version:      1.12
+name:               version-natural
+version:            0.1.0.0
+synopsis:           A simple version type.
+description:        A simple version type, which is a list of Naturals
+category:           Data
+author:             Daniel Firth
+maintainer:         dan.firth@homotopic.tech
+copyright:          Homotopic.Tech Ltd
+license:            MIT
+license-file:       LICENSE
+build-type:         Simple
+extra-source-files:
+  ChangeLog.md
+  README.md
+
+source-repository head
+  type:     git
+  location: https://gitlab.homotopic.tech/haskell/version-natural
+
+library
+  exposed-modules:    Data.Version.Natural
+  hs-source-dirs:     src
+  default-extensions:
+    DataKinds
+    DeriveGeneric
+    DerivingStrategies
+    StandaloneKindSignatures
+
+  ghc-options:
+    -Weverything -Wno-all-missed-specialisations -Wno-implicit-prelude
+    -Wno-missing-safe-haskell-mode -Wno-prepositive-qualified-module
+    -Wno-safe -Wno-unsafe
+
+  build-depends:      base >=4.7 && <5
+                    , text >=1.0 && <3
+  default-language:   Haskell2010
