diff --git a/Sprint-3/alarmclock/index.html b/Sprint-3/alarmclock/Alarm-clock-app.html
similarity index 100%
rename from Sprint-3/alarmclock/index.html
rename to Sprint-3/alarmclock/Alarm-clock-app.html
diff --git a/Sprint-3/alarmclock/alarmclock.js b/Sprint-3/alarmclock/alarmclock.js
index 6ca81cd3b..03d3584f8 100644
--- a/Sprint-3/alarmclock/alarmclock.js
+++ b/Sprint-3/alarmclock/alarmclock.js
@@ -1,5 +1,42 @@
-function setAlarm() {}
+let countdownInterval = null;
+function setAlarm() {
+ const input = document.getElementById("alarmSet");
+ let totalSeconds = parseInt(input.value, 10);
+ if (isNaN(totalSeconds) || totalSeconds <= 0) {
+ return;
+ }
+
+ if (countdownInterval) {
+ clearInterval(countdownInterval);
+ }
+
+ const heading = document.getElementById("timeRemaining");
+
+ function updateDisplay(seconds) {
+ const minutes = Math.floor(seconds / 60);
+ const remSeconds = seconds % 60;
+
+ const formattedMinutes = String(minutes).padStart(2, "0");
+ const formattedSeconds = String(remSeconds).padStart(2, "0");
+
+ heading.textContent = `Time Remaining: ${formattedMinutes}:${formattedSeconds}`;
+ }
+
+ // Set initial display immediately when button is pressed
+ updateDisplay(totalSeconds);
+
+ // Start 1000ms interval countdown
+ countdownInterval = setInterval(() => {
+ totalSeconds--;
+ updateDisplay(totalSeconds);
+
+ if (totalSeconds <= 0) {
+ clearInterval(countdownInterval);
+ playAlarm();
+ }
+ }, 1000);
+}
// DO NOT EDIT BELOW HERE
var audio = new Audio("alarmsound.mp3");