• Blog
  • Docs
  • Pricing
  • We’re hiring!
Log inSign up
ozanatgreenpt

ozanatgreenpt

thirdTimer

This version stores some data, so you can restart the app!
Remix of cricks_unmixed4u/thirdTimer
Public
Like
thirdTimer
Home
Code
10
.cursor
1
src
3
.cursorrules
.vtignore
AGENTS.md
README.md
article.md
biome.json
deno.json
knowledge.md
Environment variables
Branches
1
Pull requests
Remixes
History
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
Code
/
README.md
Code
/
README.md
Search
…
Viewing readonly version of main branch: v75
View latest version
README.md

Third Time - Productivity Timer

A minimalist web app implementing the "Third Time" productivity method.

The Method

  • Work for as long or short as you like, until you want or need to break
  • Break for up to one-third of the time you've just worked
  • Save unused break time for later
  • Handle interruptions and big breaks (meals)

Features

  • Flexible work/break timing
  • Break time banking system
  • Interruption handling
  • Big break support for meals
  • Clean, distraction-free interface with flat design
  • Consistent rounded corners throughout the UI
  • Customizable break fractions (1/2, 1/3, 1/4, 1/5, 1/6)
  • Group timers: share a passphrase to see each other's timer status anonymously

Usage

  1. Click "Start Working" to begin a work session
  2. Click "Take Break" when you want to stop working
  3. The app calculates your earned break time (work time ÷ 3)
  4. Take your break and click "Resume Work" when ready
  5. Any unused break time is saved for later

Group Timers

Enter a shared passphrase in the footer to join a group. Members see each other's timer mode (Working / Breaking / Idle) and elapsed time — no names or IDs are shared. Group state is polled every 10 seconds.

Project Structure

src/
├── backend/
│   ├── index.ts                   # Hono API server + static files
│   └── database/
│       ├── migrations.ts          # SQLite schema migrations
│       └── queries.ts             # DB query functions
├── frontend/
│   ├── components/                # React components
│   │   ├── GroupTimerCard.tsx      # Group member timer card
│   │   └── Footer.tsx             # Footer with group passphrase UI
│   ├── favicon.http.tsx            # Favicon
│   ├── index.html                  # Main app interface
│   ├── index.tsx                   # React app entry point
│   ├── style.css                   # Styling
│   └── utils/                      # Utility functions
│       ├── timer-actions.ts        # Timer actions
│       ├── state-persistence.ts    # Backend state sync
│       ├── passphrase.ts           # Passphrase localStorage helper
│       ├── group-api.ts            # Group members API fetch
│       └── user-id.ts              # Daily user ID generation
└── shared/
    ├── types.ts                    # Shared TypeScript types
    └── utils.tsx                   # Shared utility functions
FeaturesVersion controlCode intelligenceCLIMCP
Use cases
TeamsAI agentsSlackGTM
DocsShowcaseTemplatesNewestTrendingAPI examplesNPM packages
PricingNewsletterBlogAboutCareers
We’re hiring!
Brandhi@val.townStatus
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Open Source Pledge
Terms of usePrivacy policyAbuse contact
© 2026 Val Town, Inc.