CoolFace
Apppublic

usman312/stopwatch

sourceHugging Facemitupdated 1y agoView on Hugging Face
0likes
app.py56 linesDownload Raw Back to root
1import streamlit as st2import time3 4# Set page config5st.set_page_config(page_title="Stopwatch", layout="centered")6 7# Title8st.title("⏱️ Simple Stopwatch")9 10# Initialize session state11if 'start_time' not in st.session_state:12    st.session_state.start_time = None13if 'running' not in st.session_state:14    st.session_state.running = False15 16# Buttons17col1, col2, col3 = st.columns(3)18with col1:19    if st.button("▶️ Start"):20        if not st.session_state.running:21            st.session_state.start_time = time.time()22            st.session_state.running = True23 24with col2:25    if st.button("⏸️ Pause"):26        if st.session_state.running:27            st.session_state.elapsed_time += time.time() - st.session_state.start_time28            st.session_state.running = False29 30with col3:31    if st.button("⏹️ Reset"):32        st.session_state.start_time = None33        st.session_state.running = False34        st.session_state.elapsed_time = 0.035 36# Track elapsed time37if 'elapsed_time' not in st.session_state:38    st.session_state.elapsed_time = 0.039 40if st.session_state.running:41    current_time = time.time()42    total_elapsed = st.session_state.elapsed_time + (current_time - st.session_state.start_time)43else:44    total_elapsed = st.session_state.elapsed_time45 46# Format time47mins, secs = divmod(total_elapsed, 60)48hours, mins = divmod(mins, 60)49 50st.markdown(f"## 🕒 {int(hours):02}:{int(mins):02}:{int(secs):02}")51 52# Auto-refresh if running53if st.session_state.running:54    time.sleep(1)55    st.experimental_rerun()56