jameson-bodenburg's picture
Update app.R
6a2d6c4 verified
library(shiny)
library(bslib)
ui <- page_fluid(
theme = bs_theme(
bootswatch = "lumen",
primary = "#F76900",
secondary = "#2C3E50"
),
div(
style = "background-color:#2C3E50; color:white; padding:30px; text-align:center;",
h1("Jameson Bodenburg"),
h4("Syracuse Sport Analytics | Syracuse Men's Basketball | Coastal Carolina Baseball | Hyannis Harbor Hawks"),
h5("I am a Sport Analytics student at Syracuse University. Here is my portfolio of analytics presentations and apps."),
br(),
div(
style = "margin-top:10px;",
tags$a(
href = "https://www.linkedin.com/in/jameson-bodenburg",
target = "_blank",
class = "btn btn-primary btn-sm",
"LinkedIn"
),
tags$a(
href = "https://docs.google.com/document/d/1Vzrw7yTbaKXqmhWGwf_IJsR-AIKe_W7Ebkb-mZ0kPBE/view?usp=sharing",
target = "_blank",
class = "btn btn-primary btn-sm",
style = "margin-left:8px;",
"View Resume"
)
),
br(),
div(
style = "display:flex; justify-content:center; align-items:center; gap:30px; flex-wrap:wrap;",
tags$img(src = "https://upload.wikimedia.org/wikipedia/commons/thumb/4/49/Syracuse_Orange_logo.svg/1515px-Syracuse_Orange_logo.svg.png", height = "60px"),
tags$img(src = "https://upload.wikimedia.org/wikipedia/commons/6/64/Hyannis_Harbor_Hawks.png", height = "60px"),
tags$img(src = "https://upload.wikimedia.org/wikipedia/en/e/ef/Coastal_Carolina_Chanticleers_logo.svg", height = "60px")
)
),
br(),
layout_columns(
col_widths = c(6, 6),
card(
style = "transition:0.3s; box-shadow:0 4px 12px rgba(0,0,0,0.15);",
card_header(div("2025 Saberseminar Presentation", style="font-weight:bold; font-size:18px;")),
card_body(
p("Evaluating situational hitting"),
tags$a(
href = "https://docs.google.com/presentation/d/1AUCwY9W-cg03Fw_kZh9IJbBdtkOnDeiz/edit?usp=sharing",
target = "_blank",
class = "btn btn-primary",
"View Google Slides"
)
)
),
card(
style = "transition:0.3s; box-shadow:0 4px 12px rgba(0,0,0,0.15);",
card_header(div("2025 SABR Diamond Dollars Presentation", style="font-weight:bold; font-size:18px;")),
card_body(
p("Redesigning and creating pitcher relief metrics"),
tags$a(
href = "https://docs.google.com/presentation/d/157xClOjLZghWBXaWaFQKXDOJ0gt8ASTP/edit?usp=sharing",
target = "_blank",
class = "btn btn-primary",
"View Google Slides"
)
)
),
card(
style = "transition:0.3s; box-shadow:0 4px 12px rgba(0,0,0,0.15);",
card_header(div("Catcher Framing Run Value App", style="font-weight:bold; font-size:18px;")),
card_body(
p("Visualization of College Baseball Catcher Framing Run Value"),
tags$a(
href = "https://huggingface.co/spaces/jameson-bodenburg/College_Catcher_FRV",
target = "_blank",
class = "btn btn-primary",
"View App"
)
)
),
card(
style = "transition:0.3s; box-shadow:0 4px 12px rgba(0,0,0,0.15);",
card_header(div("NBA Draft 2025 Player Comparisons App", style = "font-weight:bold; font-size:18px;")),
card_body(
p("App for providing past college player comparisons for 2025 NBA Draft prospects"),
tags$a(
href = "https://huggingface.co/spaces/jameson-bodenburg/25_NBA_Draft_Comparisons",
target = "_blank",
class = "btn btn-primary",
"View App"
)
)
),
card(
style = "transition:0.3s; box-shadow:0 4px 12px rgba(0,0,0,0.15);",
card_header(div("2026 Football Analytics Blitz Presentation", style="font-weight:bold; font-size:18px;")),
card_body(
p("Analyzing the usage of Two-High Safety coverages and optimizing offensive strategy against it"),
tags$a(
href = "https://docs.google.com/presentation/d/16eqZoad4pYFo3hKpV8J5omA6w9gm2Ee2rNPbqiTFxMA/edit?usp=sharing",
target = "_blank",
class = "btn btn-primary",
"View Google Slides"
)
)
),
card(
style = "transition:0.3s; box-shadow:0 4px 12px rgba(0,0,0,0.15);",
card_header(div("NBA Top 100 Voting App", style="font-weight:bold; font-size:18px;")),
card_body(
p("App allowing the members of Syracuse Basketball Analytics Club to vote on the NBA's top 100 players"),
tags$a(
href = "https://huggingface.co/spaces/jameson-bodenburg/NBA_Top100",
target = "_blank",
class = "btn btn-primary",
"View App"
)
)
)
),
br(),
div(
style = "background-color:#f8f9fa; padding:20px; text-align:center; font-size:14px; color:#555;",
p("© 2025 Jameson Bodenburg | Built with Shiny"),
p("Contact: jameson.bodenburg@gmail.com | 860-247-8481")
)
)
server <- function(input, output, session) {}
shinyApp(ui, server)