0x48piraj / 0x48piraj/countdown

Mayada

Open Beginner friendly
#5 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
20
Forks
11
PR merge metrics
No merged PRs in 30d

Description

love-link/
│── index.html (Lock Screen)
│── home.html (Main Page + Countdown)
│── css/
│ └── style.css
│── js/
│ └── app.js



Welcome Mayada


Welcome Mayada ❤️


To enter, type our special date



Unlock ❤️



Especially For Mayada


Especially For Mayada ❤️


My favorite person in the world


00Days

00Hours

00Mins

00Secs


* { box-sizing: border-box; font-family: 'Segoe UI', sans-serif; }

body.bg {
margin: 0;
min-height: 100vh;
background: linear-gradient(135deg,#ff5f9e,#ff85c1);
display: flex;
justify-content: center;
align-items: center;
}

.card {
background: rgba(255,255,255,0.2);
backdrop-filter: blur(12px);
border-radius: 20px;
padding: 30px;
text-align: center;
color: #fff;
width: 90%;
max-width: 360px;
box-shadow: 0 20px 40px rgba(0,0,0,0.2);
}

.card.big { max-width: 420px; }

h1 { margin-bottom: 10px; }

.subtitle { opacity: .9; margin-bottom: 20px; }

input {
width: 100%;
padding: 12px;
border-radius: 25px;
border: none;
outline: none;
margin: 15px 0;
text-align: center;
}

button {
background: #ff2f7d;
border: none;
color: white;
padding: 12px 30px;
border-radius: 25px;
font-size: 16px;
cursor: pointer;
}

.countdown {
display: flex;
justify-content: space-between;
margin: 20px 0;
}

.countdown div {
background: rgba(255,255,255,0.25);
padding: 10px;
border-radius: 15px;
width: 22%;
}

.countdown span {
font-size: 22px;
font-weight: bold;
}

.footer {
margin-top: 10px;
font-size: 14px;
opacity: .9;
}
// Unlock
function unlock() {
const correct = "01011999";
const input = document.getElementById("pass").value;

if (input === correct) {
localStorage.setItem("unlocked", "yes");
window.location.href = "home.html";
} else {
alert("Wrong date 💔");
}
}

// Auto redirect if unlocked
if (localStorage.getItem("unlocked") === "yes" && location.pathname.includes("index")) {
location.href = "home.html";
}

// Countdown
const targetDate = new Date("1999-01-01T00:00:00").getTime();

setInterval(() => {
if (!document.getElementById("days")) return;

const now = new Date().getTime();
const diff = Math.abs(now - targetDate);

document.getElementById("days").innerText = Math.floor(diff / (1000*60*60*24));
document.getElementById("hours").innerText = Math.floor((diff / (1000*60*60)) % 24);
document.getElementById("mins").innerText = Math.floor((diff / (1000*60)) % 60);
document.getElementById("secs").innerText = Math.floor((diff / 1000) % 60);
}, 1000);

love-link/
│── index.html
│── home.html
│── message.html
│── gallery.html
│── css/style.css
│── js/app.js
│── assets/
│ ├── music.mp3
│ └── img1.jpg img2.jpg img3.jpg

Welcome Mayada


Welcome Mayada ❤️


Enter our special date



Unlock ❤️

Especially For Mayada


Especially For Mayada ❤️


My favorite person in the world


0Days

0Hours

0Mins

0Secs

🌙 Toggle Mode

Message


💌 Message



From the first moment until now,

you’ve always been special ❤️

This page exists just for you.


⬅ Back

Gallery


🖼 Memories



⬅ Back

body.bg{
margin:0;
min-height:100vh;
background:linear-gradient(135deg,#ff5f9e,#ff85c1);
display:flex;
align-items:center;
justify-content:center;
font-family:sans-serif;
}

.card{
background:rgba(255,255,255,.2);
backdrop-filter:blur(12px);
border-radius:20px;
padding:25px;
text-align:center;
color:white;
width:90%;
max-width:380px;
}

.big{max-width:450px;}

input,button,a{
width:100%;
padding:12px;
margin:10px 0;
border:none;
border-radius:25px;
text-decoration:none;
}

button,a{
background:#ff2f7d;
color:white;
cursor:pointer;
}

.countdown{
display:flex;
justify-content:space-between;
}

.countdown div{
background:rgba(255,255,255,.3);
padding:10px;
border-radius:15px;
width:22%;
}

.gallery img{
width:100%;
border-radius:15px;
margin:8px 0;
}

.dark{
background:linear-gradient(135deg,#1e1e2f,#3a3a5f);
}
function unlock(){
if(document.getElementById("pass").value==="01011999"){
localStorage.setItem("unlock","yes");
location.href="home.html";
}else alert("Wrong date 💔");
}

if(localStorage.getItem("unlock") && location.pathname.includes("index")){
location.href="home.html";
}

const target=new Date("1999-01-01").getTime();
setInterval(()=>{
if(!days)return;
let d=Math.abs(Date.now()-target);
days.innerText=Math.floor(d/86400000);
hours.innerText=Math.floor(d/3600000)%24;
mins.innerText=Math.floor(d/60000)%60;
secs.innerText=Math.floor(d/1000)%60;
},1000);

function toggleTheme(){
document.body.classList.toggle("dark");
}

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue shows a personal countdown website with lock screen, main page, message, and gallery. The code is provided in the issue body. Start by examining the HTML structure in index.html and home.html, then look at css/style.css for styling and js/app.js for the unlock and countdown logic. The task likely involves extending or modifying this existing codebase. Check the repository to see the current structure and identify where to integrate new features or fixes.

Written by the indexing model from the issue text.

Assessment

Tech stack
css, html, javascript
Domain
frontend, web-dev
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
65/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.