為什麼要做這個網站?
為了提升工作時的專注度,我試著使用番茄鐘工作法,因此開始四處試用別人製作的番茄鐘。
測試過幾個番茄鐘發現一些狀況:
- 需要登入才能使用
- 跟其他服務整合的一些額外的功能,反而變成執行番茄鐘工作法的阻礙
- UI 設計的很華麗,但也消秏比較多的資源
- 如果選擇手機上的 APP 則是增加了接觸手機而分心的機會
- UI 風格我不喜歡
搞到後來就決定,要花時間試用別人做的工具然後在那邊挑毛病,不如自己做一個工具來用,反正番茄鐘的複雜度不高。
番茄鐘是如何運作的?
這邊簡單介紹一下番茄鐘工作法的基本概念。
執行流程:
- 選定一項要執行的任務
- 啟動番茄鐘,開始專注工作 25 分鐘倒數
- 開始你的任務,專注在工作上 25 分鐘,避免中途中斷工作
- 番茄鐘提示時間到了,開始短休息 5 分鐘倒數
- 暫時放下工作認真休息,起身走動、喝個水、找人說個話之類的
- 每完成 4 個番茄鐘時,進入長休息 15 分鐘倒數
重要的原則:
- 如果你一定要停下手邊的任務去做別的事,這次的番茄鐘就要宣告失敗。
- 番茄鐘的最小單位是 1,不會有 2.5 個番茄鐘
- 休息很重要,時間到就要休息
如何製作這個網站?
這次的任務交給 Claude Code 來實作順便練一下如何指揮 Claude Code 使用 TDD 實戰製作網站。 TDD 的部份可以參考之前寫的文章: Spec-kit 並沒有很實用,TDD 比較實在。
首先決定開發方式,告訴 Claude Code 要如何製作這個專案,條件大概有下面這些:
- 這個網站只用 HTML/CSS/JS 完成,不使用額外的框架
- 要有辦法進行測試,驗證程式是否滿足使用情境
- 依照 TDD 的原則開發程式
將想像中的番茄鐘樣子逐項的寫下來餵給 Claude Code,初期有下面這些情境:
- 三種計時器: 25 分鐘工作 / 5 分鐘短休息 / 15 分鐘長休息
- 四個工作週期後進入長休息
- 記錄番茄鐘次數,讓使用者可以回顧自己的工作狀況
基本上就是在寫 User Story 跟 AC,我加入一個 User Story,Claude Code 就要寫出對應的測試再寫程式。
完成了
成品放在這邊: https://nyo.tw/pomodorotech/ ,歡迎大家試用並給我回饋。