|
import gradio as gr |
|
import requests |
|
|
|
def register_user(username, password): |
|
response = requests.post("http://localhost:8000/register", json={"username": username, "password": password}) |
|
return response.json() |
|
|
|
def login_user(username, password): |
|
response = requests.post("http://localhost:8000/login", json={"username": username, "password": password}) |
|
return response.json() |
|
|
|
def get_teams(): |
|
response = requests.get("http://localhost:8000/teams") |
|
return response.json() |
|
|
|
def create_team(name): |
|
response = requests.post("http://localhost:8000/teams", json={"name": name}) |
|
return response.json() |
|
|
|
def get_users(): |
|
response = requests.get("http://localhost:8000/users") |
|
return response.json() |
|
|
|
def get_user(user_id): |
|
response = requests.get(f"http://localhost:8000/users/{user_id}") |
|
return response.json() |
|
|
|
def update_user(user_id, team_id, profile, tags): |
|
response = requests.put(f"http://localhost:8000/users/{user_id}", json={"team_id": team_id, "profile": profile, "tags": tags}) |
|
return response.json() |
|
|
|
with gr.Blocks() as demo: |
|
with gr.Row(): |
|
with gr.Column(): |
|
gr.Markdown("Register") |
|
username = gr.Textbox(label="Username") |
|
password = gr.Textbox(label="Password", type="password") |
|
register_button = gr.Button("Register") |
|
register_button.click(register_user, inputs=[username, password], outputs="text") |
|
with gr.Column(): |
|
gr.Markdown("Login") |
|
username = gr.Textbox(label="Username") |
|
password = gr.Textbox(label="Password", type="password") |
|
login_button = gr.Button("Login") |
|
login_button.click(login_user, inputs=[username, password], outputs="text") |
|
|
|
with gr.Row(): |
|
with gr.Column(): |
|
gr.Markdown("Teams") |
|
team_name = gr.Textbox(label="Team Name") |
|
create_team_button = gr.Button("Create Team") |
|
create_team_button.click(create_team, inputs=[team_name], outputs="text") |
|
teams = gr.Dataframe(label="Teams") |
|
get_teams_button = gr.Button("Get Teams") |
|
get_teams_button.click(get_teams, outputs=[teams]) |
|
|
|
with gr.Row(): |
|
with gr.Column(): |
|
gr.Markdown("Users") |
|
user_id = gr.Textbox(label="User ID") |
|
get_user_button = gr.Button("Get User") |
|
get_user_button.click(get_user, inputs=[user_id], outputs="text") |
|
users = gr.Dataframe(label="Users") |
|
get_users_button = gr.Button("Get Users") |
|
get_users_button.click(get_users, outputs=[users]) |
|
|
|
with gr.Row(): |
|
with gr.Column(): |
|
gr.Markdown("Update User") |
|
user_id = gr.Textbox(label="User ID") |
|
team_id = gr.Textbox(label="Team ID") |
|
profile = gr.Textbox(label="Profile") |
|
tags = gr.Textbox(label="Tags") |
|
update_button = gr.Button("Update") |
|
update_button.click(update_user, inputs=[user_id, team_id, profile, tags], outputs="text") |
|
|
|
demo.launch() |