diff --git a/.gitignore b/.gitignore
index 68bf7df51809bdbccb2d0184bf35693f17474203..afe97c79136e8c6297a820aa941e44cf8bb88386 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@ src/generated/
 *.tgz
 dist
 package-lock.json
+*~
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000000000000000000000000000000000000..a8084e629ff582ee3bafec2a155385264a1cd171
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "caosdb-proto"]
+	path = caosdb-proto
+	url = git@gitlab.indiscale.com:caosdb/src/caosdb-proto
diff --git a/caosdb-proto b/caosdb-proto
new file mode 160000
index 0000000000000000000000000000000000000000..533c8e7341d0659e3cc43d834793a7a965703f55
--- /dev/null
+++ b/caosdb-proto
@@ -0,0 +1 @@
+Subproject commit 533c8e7341d0659e3cc43d834793a7a965703f55