> 웹 프론트엔드 > CSS 튜토리얼 > Pomodoro 타이머 웹사이트 구축

Pomodoro 타이머 웹사이트 구축

王林
풀어 주다: 2024-08-25 20:31:36
원래의
392명이 탐색했습니다.

Build a Pomodoro Timer Website

소개

안녕하세요, 개발자 여러분! 저의 최신 프로젝트인 포모도로 타이머를 소개하게 되어 기쁩니다. 이 프로젝트는 시간 관리 기술을 향상시키거나 프런트엔드 개발을 연습하려는 모든 사람에게 적합합니다. Pomodoro 타이머는 작업을 집중된 간격으로 나누어 생산성을 향상하고 하루 종일 집중력을 유지할 수 있도록 설계된 간단하면서도 강력한 도구입니다.

프로젝트 개요

포모도로 타이머는 사용자가 집중적인 작업 세션(일반적으로 25분 후 짧은 휴식)에 대한 타이머를 설정할 수 있는 웹 기반 애플리케이션입니다. 이 프로젝트는 HTML 및 CSS를 사용한 깔끔하고 반응성이 뛰어난 사용자 인터페이스와 함께 JavaScript를 사용하여 기능적인 타이머를 만드는 방법을 보여줍니다.

특징

  • 간단한 타이머 인터페이스: 카운트다운 타이머와 컨트롤을 표시하는 미니멀한 디자인
  • 시작, 중지, 재설정: 사용자는 사용하기 쉬운 버튼으로 타이머를 시작, 중지 및 재설정할 수 있습니다.
  • 알림 경고: 타이머가 0에 도달하면 경고가 발생하여 세션 종료를 알립니다.

사용된 기술

  • HTML: Pomodoro 타이머의 구조를 제공합니다.
  • CSS: 타이머 스타일을 지정하여 깨끗하고 현대적인 디자인을 보장합니다.
  • JavaScript: 카운트다운 로직 및 사용자 상호작용을 포함하여 타이머의 핵심 기능을 구현합니다.

프로젝트 구조

프로젝트 구조 개요는 다음과 같습니다.

Pomodoro-Timer/
├── index.html
├── style.css
└── script.js
로그인 후 복사
  • index.html: Pomodoro 타이머의 HTML 구조를 포함합니다.
  • style.css: 시각적으로 매력적이고 반응성이 뛰어난 디자인을 위한 CSS 스타일을 포함합니다.
  • script.js: 카운트다운 및 사용자 상호작용을 포함한 타이머 기능을 관리합니다.

설치

프로젝트를 시작하려면 다음 단계를 따르세요.

  1. 저장소 복제:

    git clone https://github.com/abhishekgurjar-in/Pomodoro-Timer.git
    
    로그인 후 복사
  2. 프로젝트 디렉토리 열기:

    cd Pomodoro-Timer
    
    로그인 후 복사
  3. 프로젝트 실행:

    • 포모도로 타이머를 사용하려면 웹 브라우저에서 index.html 파일을 열어보세요.

용법

  1. 웹사이트를 엽니다 웹 브라우저에서
  2. 타이머를 시작하세요 "시작" 버튼을 클릭하세요.
  3. 필요에 따라 "중지" 및 "재설정" 버튼을 사용하여 타이머를 중지하거나 재설정하세요.
  4. 일에 집중하세요 타이머가 0이 될 때까지 잠시 쉬다가 다음 세션을 시작하세요.

코드 설명

HTML

index.html 파일은 헤더, 타이머 표시, 제어 버튼 등 포모도로 타이머의 구조를 정의합니다. 다음은 스니펫입니다.

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Pomodoro Timer</title>
    <link rel="stylesheet" href="style.css" />
    <script src="script.js" defer></script>
  </head>
  <body>
    <div class="container">
      <h1 class="title">Pomodoro Timer</h1>
      <p class="timer" id="timer">25:00</p>
      <div class="button-wrapper">
        <button id="start">Start</button>
        <button id="stop">Stop</button>
        <button id="reset">Reset</button>
      </div>
    </div>
    <div class="footer">
      <p>Made with ❤️ by Abhishek Gurjar</p>
    </div>
  </body>
</html>
로그인 후 복사

CSS

style.css 파일은 Pomodoro 타이머의 스타일을 지정하여 시각적으로 매력적이고 반응성이 뛰어납니다. 다음은 몇 가지 주요 스타일입니다.

.container {
  margin: 0 auto;
  max-width: 400px;
  text-align: center;
  padding: 20px;
  font-family: "Roboto", sans-serif;
}

.title {
  font-size: 36px;
  margin-bottom: 10px;
  color: #2c3e50;
}

.timer {
  font-size: 72px;
  color: #2c3e50;
}

button {
  font-size: 18px;
  padding: 10px 20px;
  margin: 10px;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  text-transform: uppercase;
  transition: opacity 0.3s ease-in-out;
}

button:hover {
  opacity: 0.7;
}

#start {
  background-color: #27ae60;
}

#stop {
  background-color: #c0392b;
}

#reset {
  background-color: #7f8c8d;
}

.footer {
  margin-top: 250px;
  text-align: center;
}
로그인 후 복사

자바스크립트

script.js 파일에는 카운트다운 메커니즘 및 사용자 상호 작용 처리를 포함하여 Pomodoro 타이머에 대한 논리가 포함되어 있습니다. 다음은 일부 내용입니다.

const startEl = document.getElementById("start");
const stopEl = document.getElementById("stop");
const resetEl = document.getElementById("reset");
const timerEl = document.getElementById("timer");

let interval;
let timeLeft = 1500;

function updateTimer() {
  let minutes = Math.floor(timeLeft / 60);
  let seconds = timeLeft % 60;
  let formattedTime = `${minutes.toString().padStart(2, "0")}:${seconds
    .toString()
    .padStart(2, "0")}`;

  timerEl.innerHTML = formattedTime;
}

function startTimer() {
  interval = setInterval(() => {
    timeLeft--;
    updateTimer();
    if (timeLeft === 0) {
      clearInterval(interval);
      alert("Time's up!");
      timeLeft = 1500;
      updateTimer();
    }
  }, 1000);
}

function stopTimer() {
  clearInterval(interval);
}

function resetTimer() {
  clearInterval(interval);
  timeLeft = 1500;
  updateTimer();
}

startEl.addEventListener("click", startTimer);
stopEl.addEventListener("click", stopTimer);
resetEl.addEventListener("click", resetTimer);
로그인 후 복사

라이브 데모

여기에서 Pomodoro Timer 프로젝트의 라이브 데모를 확인하실 수 있습니다.

결론

Pomodoro Timer를 구축하는 것은 HTML, CSS, JavaScript와 같은 필수 프런트엔드 기술을 연습할 수 있는 보람 있는 경험이었습니다. 이 프로젝트는 생산성 향상을 위한 훌륭한 도구이며, 더 나은 시간 관리를 위한 자신만의 도구를 만드는 데 영감을 주기를 바랍니다. 즐거운 코딩하세요!

크레딧

이 프로젝트는 실용적이고 대화형 웹 애플리케이션을 만드는 데 중점을 두고 프런트 엔드 개발에 대한 지속적인 학습 여정의 일환으로 개발되었습니다.

작가

  • 아비셰크 구자르
    • GitHub 프로필

위 내용은 Pomodoro 타이머 웹사이트 구축의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿