diff --git a/.prettierrc b/.prettierrc
new file mode 100644
index 0000000..3817b1b
--- /dev/null
+++ b/.prettierrc
@@ -0,0 +1,10 @@
+{
+	"singleQuote": true,
+	"semi": true,
+	"useTabs": true,
+	"tabWidth": 2,
+	"trailingComma": "all",
+	"printWidth": 80,
+	"bracketSpacing": true,
+	"arrowParens": "avoid"
+}
diff --git a/01/colors/data/constant.js b/01/colors/data/constant.js
new file mode 100644
index 0000000..ab68595
--- /dev/null
+++ b/01/colors/data/constant.js
@@ -0,0 +1,13 @@
+const COLOR_CHIP = [
+  "#e74c3c",
+  "#f1c40f",
+  "#2ecc71",
+  "#1abc9c",
+  "#00a8ff",
+  "#5352ed",
+  "#34495e",
+  "#9b59b6",
+  "#7f8c8d",
+];
+
+export { COLOR_CHIP };
diff --git a/01/colors/index.html b/01/colors/index.html
new file mode 100644
index 0000000..0f15527
--- /dev/null
+++ b/01/colors/index.html
@@ -0,0 +1,16 @@
+
+
+  
+    
+    
+    
+    
+    Colors
+  
+  
+    
+    
+  
+
diff --git a/01/colors/src/css/style.css b/01/colors/src/css/style.css
new file mode 100644
index 0000000..b733f4b
--- /dev/null
+++ b/01/colors/src/css/style.css
@@ -0,0 +1,28 @@
+body {
+  margin: 0;
+  overflow: hidden;
+  font-size: 17px;
+  color: #333;
+}
+.container {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  width: 100vw;
+  height: 100vh;
+}
+
+.click-btn {
+  cursor: pointer;
+  padding: 8px 12px;
+  user-select: none;
+  border-radius: 4px;
+  border: 1px solid #333;
+}
+.click-btn:hover {
+  color: #fff;
+  background-color: #333;
+}
+.click-btn-focus {
+  box-shadow: 0 0 0 0.2rem rgb(52 58 64 / 50%);
+}
diff --git a/01/colors/src/js/index.js b/01/colors/src/js/index.js
new file mode 100644
index 0000000..2b3c84f
--- /dev/null
+++ b/01/colors/src/js/index.js
@@ -0,0 +1,16 @@
+import { COLOR_CHIP } from "../../data/constant.js";
+
+const $container = document.querySelector(".container");
+const $clickBtn = document.querySelector(".click-btn");
+
+window.addEventListener("click", (e) => {
+  const isClickBtn = e.target.classList.contains("click-btn");
+  const randomNum = Math.ceil(Math.random() * 8);
+
+  if (isClickBtn) {
+    $clickBtn.classList.add("click-btn-focus");
+    $container.style.backgroundColor = COLOR_CHIP[randomNum];
+  } else {
+    $clickBtn.classList.remove("click-btn-focus");
+  }
+});
diff --git a/01/hex-colors/index.html b/01/hex-colors/index.html
new file mode 100644
index 0000000..18bc499
--- /dev/null
+++ b/01/hex-colors/index.html
@@ -0,0 +1,33 @@
+
+
+  
+    
+    
+    
+    
+    Hex Colors
+  
+  
+    
+      
+        
+          CLICK THE BUTTON BELLOW TO GENERATE A RANDOM GRADIENT
+        
+        
HEX COLOR COMBINATION
+      
+      
+        
+          background: linear-gradient(to right,
+          #52838b ,
+          #17725d);
+        
+      
+      
+    
+              

+            
+			
+				
+          
COUNTER
+          
+            
0
+          
+          
+            
+            
+          
+				
+				
+			
+			
+				
+					
Pass the message
+				
+				
+					
Enter a message
+					
+					
+						
+					
+					
+				
+			
+