diff --git a/lib/cid.jar b/lib/com/github/ipld/java-cid/v1.3.6/java-cid-v1.3.6.jar
similarity index 100%
rename from lib/cid.jar
rename to lib/com/github/ipld/java-cid/v1.3.6/java-cid-v1.3.6.jar
diff --git a/lib/multiaddr.jar b/lib/com/github/multiformats/java-multiaddr/v1.4.10/java-multiaddr-v1.4.10.jar
similarity index 100%
rename from lib/multiaddr.jar
rename to lib/com/github/multiformats/java-multiaddr/v1.4.10/java-multiaddr-v1.4.10.jar
diff --git a/lib/multibase.jar b/lib/com/github/multiformats/java-multibase/1.1.1/java-multibase-1.1.1.jar
similarity index 100%
rename from lib/multibase.jar
rename to lib/com/github/multiformats/java-multibase/1.1.1/java-multibase-1.1.1.jar
diff --git a/lib/multihash.jar b/lib/com/github/multiformats/java-multihash/1.3.2/java-multihash-1.3.2.jar
similarity index 100%
rename from lib/multihash.jar
rename to lib/com/github/multiformats/java-multihash/1.3.2/java-multihash-1.3.2.jar
diff --git a/lib/junit-4.13.2.jar b/lib/junit/junit/4.13.2/junit-4.13.2.jar
similarity index 100%
rename from lib/junit-4.13.2.jar
rename to lib/junit/junit/4.13.2/junit-4.13.2.jar
diff --git a/lib/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar b/lib/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar
new file mode 100644
index 0000000..9d5fe16
Binary files /dev/null and b/lib/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar differ
diff --git a/lib/hamcrest-2.2.jar b/lib/org/hamcrest/hamcrest/2.2/hamcrest-2.2.jar
similarity index 100%
rename from lib/hamcrest-2.2.jar
rename to lib/org/hamcrest/hamcrest/2.2/hamcrest-2.2.jar
diff --git a/pom.xml b/pom.xml
index 3ba55a3..afe9e4c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -32,36 +32,86 @@
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-        <version.junit>4.13.2</version.junit>
-        <version.hamcrest>2.2</version.hamcrest>
+		<version.junit>4.13.2</version.junit>
+		<version.hamcrest>2.2</version.hamcrest>
 		<version.multiaddr>v1.4.10</version.multiaddr>
+		<version.multibase>1.1.1</version.multibase>
+		<version.multihash>1.3.2</version.multihash>
+		<version.cid>v1.3.6</version.cid>
 	</properties>
 
 	<repositories>
 		<repository>
 			<id>jitpack.io</id>
+			<releases>
+				<!-- Enable this if you want to use the dependency JARs as published on Jitpack -->
+				<enabled>false</enabled>
+			</releases>
+			<snapshots>
+				<enabled>false</enabled>
+			</snapshots>
 			<url>https://jitpack.io</url>
 		</repository>
+		<repository>
+			<id>local-jars</id>
+			<releases>
+				<!-- Disable this if you don't want to use the local dependency JARs from the lib directory-->
+				<enabled>true</enabled>
+				<checksumPolicy>ignore</checksumPolicy>
+			</releases>
+			<snapshots>
+				<enabled>false</enabled>
+			</snapshots>
+			<url>file://${project.basedir}/lib</url>
+		</repository>
+		<!-- Override and disable the Central repository to make sure we don't depend on it-->
+		<repository>
+			<id>central</id>
+			<name>Central Repository</name>
+			<url>https://repo.maven.apache.org/maven2</url>
+			<layout>default</layout>
+			<releases>
+				<enabled>false</enabled>
+			</releases>
+			<snapshots>
+				<enabled>false</enabled>
+			</snapshots>
+		</repository>
 	</repositories>
 
 	<dependencies>
-        <dependency>
-            <groupId>com.github.multiformats</groupId>
-            <artifactId>java-multiaddr</artifactId>
-            <version>${version.multiaddr}</version>
-        </dependency>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <version>${version.junit}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.hamcrest</groupId>
-            <artifactId>hamcrest</artifactId>
-            <version>${version.hamcrest}</version>
-            <scope>test</scope>
-        </dependency>
+		<dependency>
+			<groupId>com.github.multiformats</groupId>
+			<artifactId>java-multiaddr</artifactId>
+			<version>${version.multiaddr}</version>
+		</dependency>
+		<dependency>
+			<groupId>com.github.multiformats</groupId>
+			<artifactId>java-multihash</artifactId>
+			<version>${version.multihash}</version>
+		</dependency>
+		<dependency>
+			<groupId>com.github.multiformats</groupId>
+			<artifactId>java-multibase</artifactId>
+			<version>${version.multibase}</version>
+		</dependency>
+		<dependency>
+			<groupId>com.github.ipld</groupId>
+			<artifactId>java-cid</artifactId>
+			<version>${version.cid}</version>
+		</dependency>
+		<dependency>
+			<groupId>junit</groupId>
+			<artifactId>junit</artifactId>
+			<version>${version.junit}</version>
+			<scope>test</scope>
+		</dependency>
+		<dependency>
+			<groupId>org.hamcrest</groupId>
+			<artifactId>hamcrest</artifactId>
+			<version>${version.hamcrest}</version>
+			<scope>test</scope>
+		</dependency>
 	</dependencies>
 
 	<build>