Dublin University Football Club: Odoo website with Google Sheets fixtures and AI match tables
We took Dublin University Football Club (Trinity Rugby) from Figma to a live Odoo website with Google Sheets fixtures and league tables, AI-built match tables, a club shop and event booking.
Live SiteDublinUniversityFootballClubistheoldestclubintheworldincontinuousexistence,foundedin1854.Itswebsiteisrunbyvolunteers:students,alumniandcommitteememberswhohaveamatchonSaturdayandexamsonMonday.Everyweeksomeonehadtoupdatefixtures,resultsandtheleaguetableacrossseventeamsbyhand.Whenthatpersonwasbusy,thewebsitefellbehindandsupportersturnedupforkick-offsthathadmoved.
- •Volunteers update fixtures in a spreadsheet and the website follows, saving volunteers 8–10 hours of manual data entry every match week.
- •New fixture rounds are drafted in minutes rather than built row by row.
- •Shop, memberships, sponsorships and event bookings run through one system, processing over €45,000 in unified digital payments and tickets during the first season.
- •100% — Milestone Delivery (On schedule)
- •Real-Time — Google Sheets Fixture Sync (Automated)
- •AI-Powered — Match Table Creation (Direct in Odoo)






Next Projects
View All Works →Contra Farms: IoT smart farming app in Flutter with a native iOS IoT library, remote machine control, Contra AI and an admin panel
Contra Farms growers activate grow chambers by QR code, monitor pH, TDS, temperature and humidity live, control lights, pumps and dosing from their phone, and follow Contra AI suggestions, with an admin panel for alerts, reports and firmware.
Catch Foundation: Smart Purchase Management on Odoo with AI Bill Scan
Catch Foundation compares vendor prices item by item, sends RFQs and purchase orders on WhatsApp, splits orders across vendors and reads any bill with AI, all in one Odoo purchase system.
Ready to engineer your next flagship system? mission-critical platform?
Book a technical scoping session with our senior architects to design and build your web, mobile, or enterprise platform.