diff --git a/GameProject/src/collider/package-info.java b/GameProject/src/collider/package-info.java
new file mode 100644
index 0000000..f101edb
--- /dev/null
+++ b/GameProject/src/collider/package-info.java
@@ -0,0 +1,9 @@
+/**
+ * The package contains classes implementing a 'bounding box' area around game objects.
+ * The abstract base class {@link Collider} provides the abstract method {@link Collider#collidesWith(Collider)},
+ * which needs to be implemented by child classes to detect and decide whether or not an object with such instance really collides with the other.
+ * {@link Collider} instances are to be used for game objects ({@link gameobjects}); see constructors.
+ *
+ * The benefit of seperating Colliders from visual representations is that the area for collisions can be smaller/bigger/other shape to improve game play experience.
+ */
+package collider;
diff --git a/GameProject/src/gameobjects/package-info.java b/GameProject/src/gameobjects/package-info.java
new file mode 100644
index 0000000..7ec704e
--- /dev/null
+++ b/GameProject/src/gameobjects/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * The package gameobjects contains all objects with a visual representation on screen.
+ * They can be combined to use controller instances for their behavior (subclasses of {@link controller.ObjectController}).
+ * The abstract base class is {@link GameObject}, which forces child-classes to implement the method
+ * {@link GameObject#updateObject()}.
+ */
+package gameobjects;
diff --git a/GameProject/src/playground/package-info.java b/GameProject/src/playground/package-info.java
new file mode 100644
index 0000000..bbbf357
--- /dev/null
+++ b/GameProject/src/playground/package-info.java
@@ -0,0 +1,9 @@
+/**
+ * The package playground contains all level specific logic and control of level logic.
+ * The structure and general logic (with global and local flags to be stored/used)
+ * is provided in abstract base class {@link Playground}.
+ * Child-classes implement specific logic for one level and game type (e.g. {@link SpaceInvadersLevel}).
+ *
+ * Generally, the base class {@link Playground} supports totally different game types to be implemented.
+ */
+package playground;