Spaces:
Runtime error
Runtime error
File size: 2,533 Bytes
0638f4b 9a8af44 b305c27 b31f2bf 670df4a b31f2bf de3f3b9 b31f2bf b305c27 b31f2bf 7b45b46 8db7e82 9a8af44 7b45b46 8db7e82 670df4a 0dc1ccf 670df4a 8db7e82 670df4a 8db7e82 de3f3b9 670df4a 8db7e82 f6e11f0 670df4a 8db7e82 670df4a f6e11f0 9a8af44 20481f7 f6e11f0 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
import gradio as gr
from task_functions import add_task, delete_task, get_tasks
# Initialize Gradio app with dark tech-inspired theme
with gr.Blocks() as demo:
gr.Markdown(
"""
<div style="text-align: center; font-size: 28px; font-weight: bold; color: #FFA500;">
📝 Futuristic To-Do List Tracker
</div>
"""
)
# Create an empty DataFrame display
task_table = gr.DataFrame(
headers=["Task", "Priority", "Status", "Due Date"],
label="Current Tasks",
elem_id="task-table",
interactive=False
)
# Add Task Section
with gr.Row():
with gr.Column(scale=3):
task_input = gr.Textbox(
label="Task",
placeholder="Enter your task...",
elem_id="input-box"
)
with gr.Column(scale=1):
priority_input = gr.Dropdown(
choices=["Low", "Medium", "High"],
label="Priority",
value="Medium",
elem_id="dropdown"
)
status_input = gr.Dropdown(
choices=["Not Started", "In Progress", "Completed"],
label="Status",
value="Not Started",
elem_id="dropdown"
)
with gr.Column(scale=2):
due_date_input = gr.Textbox(
label="Due Date (YYYY-MM-DD)",
placeholder="YYYY-MM-DD",
elem_id="input-box"
)
with gr.Column(scale=1):
add_button = gr.Button("Add Task", elem_id="button")
# Button click to add task and update DataFrame
def update_task_table(task, priority, status, due_date):
add_task(task, priority, status, due_date)
return get_tasks()
add_button.click(
fn=update_task_table,
inputs=[task_input, priority_input, status_input, due_date_input],
outputs=task_table
)
# Delete Task Section
delete_index = gr.Number(label="Task Index to Delete", value=0, elem_id="input-box")
delete_button = gr.Button("Delete Task", elem_id="button")
# Button click to delete task and update DataFrame
def update_after_delete(index):
delete_task(index)
return get_tasks()
delete_button.click(
fn=update_after_delete,
inputs=delete_index,
outputs=task_table
)
# Load external CSS file
with open("styles.css", "r") as f:
demo.css = f.read()
# Launch the Gradio app
demo.launch()
|