diff --git a/5min/day21/index.html b/5min/day21/index.html
new file mode 100644
index 0000000..0b75c6b
--- /dev/null
+++ b/5min/day21/index.html
@@ -0,0 +1,12 @@
+
+
+
+ Day 21
+
+
+
+
+
+ Hello cruel world!
+
+
diff --git a/5min/day21/script.js b/5min/day21/script.js
new file mode 100644
index 0000000..aff5515
--- /dev/null
+++ b/5min/day21/script.js
@@ -0,0 +1,4 @@
+document.addEventListener('DOMContentLoaded', function() {
+ let h2 = document.querySelector('h2');
+ h2.innerText = 'The DOM is Magical';
+});
diff --git a/5min/day21/styles.css b/5min/day21/styles.css
new file mode 100644
index 0000000..683dd33
--- /dev/null
+++ b/5min/day21/styles.css
@@ -0,0 +1,4 @@
+body {
+ background-color: indigo;
+ color: white;
+}
diff --git a/5min/day22/index.php b/5min/day22/index.php
new file mode 100644
index 0000000..7eb535f
--- /dev/null
+++ b/5min/day22/index.php
@@ -0,0 +1,14 @@
+
+
+
+
+ Day 22
+
+
+
+
+
+
+
+
+
diff --git a/catalog/js/script.js b/5min/day22/script.js
old mode 100755
new mode 100644
similarity index 100%
rename from catalog/js/script.js
rename to 5min/day22/script.js
diff --git a/5min/day22/styles.css b/5min/day22/styles.css
new file mode 100644
index 0000000..64b2323
--- /dev/null
+++ b/5min/day22/styles.css
@@ -0,0 +1,20 @@
+* {
+ margin: 0;
+ padding: 0;
+ box-sizing: border-box;
+}
+
+body {
+ height: 100vh;
+ width: 100%;
+ border: 1px solid red;
+}
+
+.square {
+ position: absolute;
+ width: 200px;
+ height: 200px;
+ background-color: pink;
+ bottom: 0;
+ left: 0;
+}
diff --git a/catalog/css/style.css b/5min/day23/css/.gitkeep
old mode 100755
new mode 100644
similarity index 100%
rename from catalog/css/style.css
rename to 5min/day23/css/.gitkeep
diff --git a/5min/day23/css/styles.css b/5min/day23/css/styles.css
new file mode 100644
index 0000000..99dd6a4
--- /dev/null
+++ b/5min/day23/css/styles.css
@@ -0,0 +1,6 @@
+div {
+ height: 100px;
+ width: 100px;
+ background-color: black;
+ border: 1px solid white;
+}
diff --git a/5min/day23/img/.gitkeep b/5min/day23/img/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/5min/day23/includes/.gitkeep b/5min/day23/includes/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/5min/day23/index.php b/5min/day23/index.php
new file mode 100644
index 0000000..e0e45bd
--- /dev/null
+++ b/5min/day23/index.php
@@ -0,0 +1,17 @@
+
+
+
+
+ Dummy Title
+
+
+
+
+
+ ';
+ ?>
+
+
+
diff --git a/5min/day23/js/.gitkeep b/5min/day23/js/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/5min/day23/js/index.js b/5min/day23/js/index.js
new file mode 100644
index 0000000..08304e5
--- /dev/null
+++ b/5min/day23/js/index.js
@@ -0,0 +1,14 @@
+document.querySelectorAll('div').forEach((d) => {
+ d.style.backgroundColor = 'black';
+ d.addEventListener('click', populate);
+})
+
+function populate() {
+ if (this.style.backgroundColor === 'black') {
+ this.style.backgroundColor = 'red';
+ this.style.borderRadius = '50%';
+ } else {
+ this.style.backgroundColor = 'black';
+ this.style.borderRadius = '0%';
+ }
+}
diff --git a/5min/day24/css/.gitkeep b/5min/day24/css/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/5min/day24/css/styles.css b/5min/day24/css/styles.css
new file mode 100644
index 0000000..1603f03
--- /dev/null
+++ b/5min/day24/css/styles.css
@@ -0,0 +1,11 @@
+div {
+ position: absolute;
+ top: 0px;
+ height: 100px;
+ width: 100px;
+ background-color: black;
+}
+
+button {
+ float: right;
+}
diff --git a/5min/day24/img/.gitkeep b/5min/day24/img/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/5min/day24/includes/.gitkeep b/5min/day24/includes/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/5min/day24/index.php b/5min/day24/index.php
new file mode 100644
index 0000000..73df3de
--- /dev/null
+++ b/5min/day24/index.php
@@ -0,0 +1,15 @@
+
+
+
+
+ Dummy Title
+
+
+
+
+
+
+
+
+
+
diff --git a/5min/day24/js/.gitkeep b/5min/day24/js/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/5min/day24/js/index.js b/5min/day24/js/index.js
new file mode 100644
index 0000000..fad689b
--- /dev/null
+++ b/5min/day24/js/index.js
@@ -0,0 +1,9 @@
+const div = document.querySelector('div');
+const button = document.querySelector('button')
+
+let times = 1;
+button.addEventListener('click', (e) => {
+ let px = 300 * times;
+ times++;
+ div.style.top = px + 'px';
+});
diff --git a/catalog/cart.php b/catalog/cart.php
index e69de29..d70a86a 100755
--- a/catalog/cart.php
+++ b/catalog/cart.php
@@ -0,0 +1,13 @@
+Catalog';
+
+echo '';
+echo catalog_grid(fetch_catalog());
+echo '
';
+
+include_once 'components/foot.php';
diff --git a/catalog/components/cart/item.php b/catalog/components/cart/item.php
new file mode 100644
index 0000000..79c8484
--- /dev/null
+++ b/catalog/components/cart/item.php
@@ -0,0 +1,20 @@
+
+
+
+
+
+
' . $item['description'] . '
+
+
+
+ ';
+
+ return $item;
+}
diff --git a/catalog/components/foot.php b/catalog/components/foot.php
new file mode 100644
index 0000000..e497e7c
--- /dev/null
+++ b/catalog/components/foot.php
@@ -0,0 +1,18 @@
+