|
import gradio as gr |
|
from datasets import load_dataset, Dataset, concatenate_datasets |
|
from datetime import datetime |
|
import requests |
|
import os |
|
|
|
|
|
DATASET_NAME = "andito/technical_interview_internship_2025" |
|
TOKEN = os.environ.get("HF_TOKEN") |
|
dataset = load_dataset(DATASET_NAME, split="train") |
|
|
|
|
|
def log_to_hf_dataset(username): |
|
if not username: |
|
return "Please enter your username to proceed.", None |
|
|
|
|
|
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S") |
|
|
|
|
|
new_entry = Dataset.from_dict({ |
|
"username": [username], |
|
"timestamp": [timestamp], |
|
}) |
|
updated_dataset = concatenate_datasets([dataset, new_entry]) |
|
updated_dataset.push_to_hub(DATASET_NAME, token=TOKEN) |
|
|
|
|
|
return "Thank you! Your download is ready.", "exercise.pdf" |
|
|
|
|
|
with gr.Blocks() as demo: |
|
username = gr.Textbox(label="Enter your username", placeholder="Your Hugging Face username") |
|
download_button = gr.Button("Download Exercise") |
|
output = gr.Text() |
|
file = gr.File() |
|
|
|
download_button.click(log_to_hf_dataset, inputs=[username], outputs=[output, file]) |
|
|
|
|
|
demo.launch() |
|
|
|
|