diff --git a/Data/Octree.hs b/Data/Octree.hs
new file mode 100644
--- /dev/null
+++ b/Data/Octree.hs
@@ -0,0 +1,13 @@
+module Data.Octree(Octree,
+                   Vector3(..),
+                   dist, 
+                   fromList, toList,
+                   lookup,
+                   insert,
+                   nearest,
+                   withinRange)
+where
+
+import Prelude hiding(lookup)
+import Data.Octree.Internal
+
diff --git a/LICENSE b/LICENSE
new file mode 100644
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,29 @@
+Haskell code in this package is subject to:
+
+Copyright (c) Michal J. Gajda '2012
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+1. Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+2. 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.
+3. Neither the name of the author nor the names of his contributors
+   may be used to endorse or promote products derived from this software
+   without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHORS 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/Octree.cabal b/Octree.cabal
new file mode 100644
--- /dev/null
+++ b/Octree.cabal
@@ -0,0 +1,37 @@
+name:                Octree
+version:             0.2
+stability:           beta
+homepage:            https://github.com/mgajda/octree
+package-url:         http://hackage.haskell.org/package/octree
+synopsis:            Simple unbalanced Octree for storing data about 3D points
+description:         Octree data structure is relatively shallow data structure for space partitioning.
+category:            Data
+license:             BSD3
+license-file:        LICENSE
+
+author:              Michal J. Gajda
+copyright:           Copyright by Michal J. Gajda '2012
+maintainer:          mjgajda@googlemail.com
+bug-reports:         mailto:mjgajda@googlemail.com
+
+
+build-type:          Simple
+cabal-version:       >=1.8
+tested-with:         GHC==7.0.4
+-- Also tested with GHC-7.4rc2
+
+source-repository head
+  type:     git
+  location: git@github.com:mgajda/octree.git
+
+Library
+   build-depends:    base>=4.0, base <4.6, AC-Vector >= 2.3.0, QuickCheck >= 2.4.0
+   exposed-modules:  Data.Octree
+   exposed:          True
+   extensions:       ScopedTypeVariables
+
+-- I do not know how to make it work. To test use: runghc tests/test_Octree.hs
+--Test-suite test_Octree
+--  Type:              exitcode-stdio-1.0
+--  Build-Depends:     base>=4.0, base<4.6
+--  Main-is:           tests/test_Octree.hs
diff --git a/Setup.hs b/Setup.hs
new file mode 100644
--- /dev/null
+++ b/Setup.hs
@@ -0,0 +1,2 @@
+import Distribution.Simple
+main = defaultMain
