diff --git a/Calculators/Dudeney-Number-Calculator/README.md b/Calculators/Dudeney-Number-Calculator/README.md
new file mode 100644
index 000000000..dec40de5b
--- /dev/null
+++ b/Calculators/Dudeney-Number-Calculator/README.md
@@ -0,0 +1,20 @@
+#
Dudeney Number Calculator
+
+## Description :-
+
+This is a simple website that checks whether an entered number is a Dudeney number or not.
+
+## Tech Stacks :-
+
+- HTML
+- CSS
+- JavaScript
+
+## Features :-
+
+Displays a clear message indicating if the input is a Dudeney number or not.
+Handles queries for large numbers too
+
+## Screenshots :-
+
+![image](https://github.com/user-attachments/assets/df5b21e9-16d2-48f4-b3f3-c4dfa9919d0f)
diff --git a/Calculators/Dudeney-Number-Calculator/assets/background.jpg b/Calculators/Dudeney-Number-Calculator/assets/background.jpg
new file mode 100644
index 000000000..6cb19a3d1
Binary files /dev/null and b/Calculators/Dudeney-Number-Calculator/assets/background.jpg differ
diff --git a/Calculators/Dudeney-Number-Calculator/index.html b/Calculators/Dudeney-Number-Calculator/index.html
new file mode 100644
index 000000000..70fe4dc88
--- /dev/null
+++ b/Calculators/Dudeney-Number-Calculator/index.html
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+ Dudeney Number Calculator
+
+
+
+
+
+
+ Check Dudeney
+
+
+
+
+
+
diff --git a/Calculators/Dudeney-Number-Calculator/script.js b/Calculators/Dudeney-Number-Calculator/script.js
new file mode 100644
index 000000000..8e43fea87
--- /dev/null
+++ b/Calculators/Dudeney-Number-Calculator/script.js
@@ -0,0 +1,42 @@
+const txtInput = document.querySelector(".inputs input"),
+checkBtn = document.querySelector(".inputs button"),
+infoTxt = document.querySelector(".info-txt");
+let filterInput;
+
+function isDudeneyNumber(num) {
+ // Find the cube root of the number
+ const cubeRoot = Math.cbrt(num);
+
+ // Check if the cube root is an integer
+ if (!Number.isInteger(cubeRoot)) {
+ return false;
+ }
+
+ // Sum the digits of the number
+ const sumOfDigits = num
+ .toString()
+ .split('')
+ .map(Number)
+ .reduce((acc, digit) => acc + digit, 0);
+
+ // Check if the sum of digits equals the cube root
+ return sumOfDigits === cubeRoot;
+}
+
+checkBtn.addEventListener("click", () => {
+ let reverseInput = filterInput.split("").reverse().join("");
+ infoTxt.style.display = "block";
+ if(!isDudeneyNumber(filterInput)) {
+ return infoTxt.innerHTML = `No, '${txtInput.value}' isn't a Dudeney Number!`;
+ }
+ infoTxt.innerHTML = `Yes, '${txtInput.value}' is a Dudeney Number!`;
+});
+
+txtInput.addEventListener("keyup", () => {
+ filterInput = txtInput.value.toLowerCase().replace(/[^A-Z0-9]/ig, "");
+ if(filterInput) {
+ return checkBtn.classList.add("active");
+ }
+ infoTxt.style.display = "none";
+ checkBtn.classList.remove("active");
+});
\ No newline at end of file
diff --git a/Calculators/Dudeney-Number-Calculator/style.css b/Calculators/Dudeney-Number-Calculator/style.css
new file mode 100644
index 000000000..a69e366cd
--- /dev/null
+++ b/Calculators/Dudeney-Number-Calculator/style.css
@@ -0,0 +1,150 @@
+@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
+
+* {
+ margin: 0;
+ padding: 0;
+ box-sizing: border-box;
+ font-family: 'Poppins', sans-serif;
+}
+
+body {
+ display: flex;
+ padding: 0 10px;
+ background-image: url("assets/background.jpg");
+ align-items: center;
+ justify-content: center;
+ min-height: 100vh;
+ margin-top: 25px;
+ background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
+ background-size: 400% 400%;
+ animation: gradient 15s ease infinite;
+}
+
+::selection {
+ color: #fff;
+ background: rgb(170, 87, 204, 0.8);
+}
+
+.wrapper {
+ max-width: 500px;
+ background: #fff;
+ border-radius: 7px;
+ padding: 20px 25px 15px;
+ box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
+}
+
+header h1 {
+ font-size: 27px;
+ font-weight: 500;
+}
+
+header p {
+ margin-top: 5px;
+ font-size: 18px;
+ color: #474747;
+}
+
+.inputs {
+ margin: 20px 0 27px;
+}
+
+.inputs input {
+ width: 100%;
+ height: 60px;
+ outline: none;
+ padding: 0 17px;
+ font-size: 19px;
+ border-radius: 5px;
+ border: 1px solid #999;
+ transition: 0.1s ease;
+}
+
+.inputs input::placeholder {
+ color: #999999;
+}
+
+.inputs input:focus {
+ box-shadow: 0 3px 6px rgba(0, 0, 0, 0.13);
+}
+
+.inputs input:focus::placeholder {
+ color: #bebebe;
+}
+
+.inputs button {
+ width: 100%;
+ height: 56px;
+ border: none;
+ opacity: 0.7;
+ outline: none;
+ color: #fff;
+ cursor: pointer;
+ font-size: 17px;
+ margin-top: 20px;
+ border-radius: 5px;
+ pointer-events: none;
+ background: #AA57CC;
+ transition: opacity 0.15s ease;
+ background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
+ background-size: 400% 400%;
+ animation: gradient 15s ease infinite;
+}
+
+.inputs button.active {
+ opacity: 1;
+ pointer-events: auto;
+}
+
+.info-txt {
+ display: none;
+ font-size: 19px;
+ text-align: center;
+ margin-bottom: 18px;
+}
+
+.info-txt span {
+ color: #AA57CC;
+}
+
+@media (max-width: 520px) {
+ .wrapper {
+ padding: 17px 20px 10px;
+ }
+
+ header h1 {
+ font-size: 25px;
+ }
+
+ header p {
+ font-size: 16px;
+ }
+
+ .inputs input {
+ height: 54px;
+ font-size: 17px;
+ }
+
+ .inputs button {
+ height: 50px;
+ font-size: 16px;
+ margin-top: 17px;
+ }
+
+ .info-txt {
+ font-size: 18px;
+ }
+}
+
+@keyframes gradient {
+ 0% {
+ background-position: 0% 50%;
+ }
+
+ 50% {
+ background-position: 100% 50%;
+ }
+
+ 100% {
+ background-position: 0% 50%;
+ }
+}
diff --git a/index.html b/index.html
index bde76b7ce..089adfa99 100644
--- a/index.html
+++ b/index.html
@@ -1490,6 +1490,20 @@ Analyzes dream entries to visualize key themes, emotions, and sentiments.
+
+
+
Dudeney Number Calculator
+ Checks if an entered number is Dudeney or not.
+
+
+