ai-x-net / app.py
eagle0504's picture
Update app.py
320c7bb verified
raw
history blame
2.29 kB
import os
import streamlit as st
import pandas as pd
# Hardcoded credentials
USERNAME = os.environ["USERNAME"]
PASSWORD = os.environ["PASSWORD"]
BASE_CONTENT_CODE_ASSIST_T2_MICRO = os.environ["BASE_CONTENT_CODE_ASSIST_T2_MICRO"]
BASE_CONTENT_PROTEIN_T2_MICRO = os.environ["BASE_CONTENT_PROTEIN_T2_MICRO"]
# Initialize session state
if 'logged_in' not in st.session_state:
st.session_state.logged_in = False
# Sidebar for login/logout with emojis
st.sidebar.title("πŸ”’ AIXNet")
if st.session_state.logged_in:
st.sidebar.success("πŸŽ‰ You are logged in!")
if st.sidebar.button("πŸ”“ Log out"):
st.session_state.logged_in = False
st.sidebar.info("You have logged out.")
st.rerun() # Rerun the app to reflect the logged-out state
else:
with st.sidebar.form(key='login_form'):
username = st.text_input("πŸ‘€ Username")
password = st.text_input("πŸ”‘ Password", type="password")
login_button = st.form_submit_button(label="πŸ”“ Log in")
if login_button:
if username == USERNAME and password == PASSWORD:
st.session_state.logged_in = True
st.sidebar.success("πŸŽ‰ Login successful!")
st.rerun() # Rerun the app to reflect the logged-in state
else:
st.sidebar.error("❌ Invalid username or password. Please try again.")
# Main title area
st.title("πŸš€ AIXNet 🌐")
# Display table only if logged in
if st.session_state.logged_in:
st.subheader("πŸ“‹ AIXNet Tasks")
# Create the table data with hyperlink
data = {
"πŸ“ Task": ["πŸ’» Code assist", "🧠 Protein Compound"],
"πŸ–₯️ Instance Type": ["t2.micro", "t2.micro"],
"πŸš€ GPU Accelerator": ["A40, 9 vCPU 50 GB RAM", "A40, 9 vCPU 50 GB RAM"],
"πŸ’° Price": ["$0.05 / hour", "$0.08 / hour"],
"🌐 IPv4": [
f"[{BASE_CONTENT_CODE_ASSIST_T2_MICRO}]({BASE_CONTENT_CODE_ASSIST_T2_MICRO})",
f"[{BASE_CONTENT_PROTEIN_T2_MICRO}]({BASE_CONTENT_PROTEIN_T2_MICRO})"]
}
# Convert the data to a DataFrame
df = pd.DataFrame(data)
# Render the DataFrame with the URL as a hyperlink
st.markdown(df.to_markdown(index=False), unsafe_allow_html=True)
else:
st.info("πŸ‘‰ Please log in to view the tasks.")