Website for the Zürich Barracudas 1. Liga team. https://barracudas.steenblik.ch
  • F# 97.2%
  • CSS 2%
  • Dockerfile 0.8%
Find a file
Jacob Steenblik 3decae80ad
Some checks failed
Build & Push Docker Image / docker (push) Has been cancelled
Build & Push Docker Image / deploy (push) Has been cancelled
move to jblik docker
2026-09-30 21:44:59 +02:00
.forgejo/workflows move to jblik docker 2026-09-30 21:44:59 +02:00
src/Barracudas.Web keep menu open when selecting item 2026-09-30 21:44:59 +02:00
.gitignore columns are addable/removable 2026-09-30 21:44:59 +02:00
Barracudas.slnx initial project scaffolding 2026-09-30 21:44:57 +02:00
Dockerfile restore 2026-09-30 21:44:58 +02:00
README.md remove easyscore filter 2026-09-30 21:44:59 +02:00

Zürich Barracudas — Team Website

Server-rendered website for the Zürich Barracudas baseball team (1. Liga).

Stack

  • Backend: F# / .NET 10 + Giraffe on ASP.NET Core
  • Views: Giraffe.ViewEngine (type-safe HTML DSL)
  • Interactivity: HTMX (no JS framework, no bundler)
  • Styling: Tailwind v4 CLI (standalone binary, no npm)

Prerequisites

Develop locally

You need two terminals running in parallel.

Terminal A — Tailwind watch

tailwindcss -i src/Barracudas.Web/assets/app.css \
            -o src/Barracudas.Web/wwwroot/css/site.css \
            --watch

Terminal B — backend with hot reload

dotnet watch run --project src/Barracudas.Web --urls http://localhost:8080

Open http://localhost:8080.

Build for production (Docker)

docker build -t barracudas-web .
docker run -p 8080:8080 -e EasyScore__ApiKey=<key> -e EasyScore__RequestUserId=<id> barracudas-web

The multi-stage Dockerfile runs Tailwind and dotnet publish in the SDK image, then copies the output into a lean ASP.NET runtime image.