Py Shiny Who Am I¶
TODO: link to github
from shiny import App, ui, render, session
app_ui = ui.page_fluid(
ui.tags.style("""
.centered {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
flex-direction: column;
text-align: center;
}
.user-name {
font-size: 2.5em;
font-weight: bold;
}
.user-id .user-email {
font-size: 1em;
margin-top: 10px;
}
"""),
ui.div(
ui.div(ui.output_text("user_name"), class_="user-name"),
ui.div(ui.output_text("user_email"), class_="user-email"),
ui.div(ui.output_text("user_id"), class_="user-id"),
class_="centered"
)
)
def server(input, output, session):
@render.text
def user_name():
return session.http_conn.headers.get('X-Forwarded-Preferred-Username', 'Not available')
@render.text
def user_id():
return session.http_conn.headers.get('X-Forwarded-User', 'Not available')
@render.text
def user_email():
return session.http_conn.headers.get('X-Forwarded-Email', 'Not available')
app = App(app_ui, server)
if __name__ == "__main__":
app.run()