M
Michal Koziol

Football Club Betting ROI Homepage

This Bootstrap-based Blazor page implements a betting ROI checker with input filters and result tables. It uses EditForm validation and displays ROI summaries and recent matches with responsive Bootstrap styling.

LIVE DEMO
Generated using Instruct UI - An AI for Blazor UI Generation
## What's implemented - Input form with date range, numeric inputs, and multi-selection checkbox list - Validation using EditForm and DataAnnotationsValidator - Buttons for toggling select all and clearing selections - KPI summary cards showing total clubs, bets, wins, and ROI - Responsive tables for ROI by club and recent match list with images ## Key components - EditForm, InputDate, InputNumber, InputCheckbox - ValidationSummary, DataAnnotationsValidator - Bootstrap classes for layout: container, row, col, card, btn, table ## How it works - Two-way binding via @bind-Value updates filter model and selection - Submit triggers CalculateRoi method that simulates match data and computes ROI per club - ROI results and recent matches update UI collections for data display tables - Validation ensures MinOdds and StakePerBet meet required ranges ## Styling - Uses Bootstrap grid, card, button, and form-control classes - Icons via FontAwesome integrated as <i> elements - Responsive layout with col-12 and col-lg-* for adaptable form and results ## Reuse steps 1. Add Bootstrap CSS and FontAwesome to project 2. Create models for input and result data 3. Implement EditForm with DataAnnotations validation 4. Add filtering inputs with @bind and event handlers 5. Render summary cards and result tables 6. Wire simulated or real data retrieval logic ## Limitations & next steps - This single-page demo generates simulated data, no backend integration - Requires wiring real data services and authentication as needed - Could extend with paging, sorting on tables, more detailed charts - Styling customization possible for branding integration - Accessibility improvements and error handling enhancements advised