diff --git a/src/facilities/incubator/incubatorFramework.js b/src/facilities/incubator/incubatorFramework.js
new file mode 100644
index 0000000000000000000000000000000000000000..a425efb8c58157fb43d9149345fc79084223ed6d
--- /dev/null
+++ b/src/facilities/incubator/incubatorFramework.js
@@ -0,0 +1,40 @@
+App.Data.Facilities.incubator = {
+	baseName: "incubator",
+	genericName: null,
+	jobs: {
+		tank: {
+			position: "Tank",
+			assignment: Job.TANK,
+			publicSexUse: false,
+			fuckdollAccepted: false
+		}
+	},
+	defaultJob: "tank",
+	manager: null
+};
+
+App.Entity.Facilities.IncubatorTankJob = class extends App.Entity.Facilities.Job {
+	/**
+	 * @override
+	 * @returns {App.Entity.SlaveState[]}
+	 */
+	employees() {
+		return V.tanks;
+	}
+
+	/** @override */
+	employeesIDs() {
+		return new Set(this.employees().map(s => s.ID));
+	}
+};
+
+App.Entity.Facilities.Incubator = class extends App.Entity.Facilities.Facility {
+	constructor() {
+		super(App.Data.Facilities.incubator, {
+			tank: new App.Entity.Facilities.IncubatorTankJob()
+		});
+	}
+
+};
+
+App.Entity.facilities.incubator = new App.Entity.Facilities.Incubator();