
In Progress
Posted
Paid on delivery
# Senior Full-Stack Developer - Real-Time Squash Scoring & Tournament System ## Project Overview We are a squash club in Denmark with 7 courts and regular tournaments/events. We currently have an online scoring system where referees enter scores live during matches. The basic functionality works well, but the system is unreliable, frequently goes down, and we are heavily dependent on the original developer, who is difficult to reach. We want to build a new, modern, stable and scalable system from scratch, keeping the useful functionality of the current system while significantly improving reliability, administration, tournament management and live presentation. This is not a simple website project. We are looking for an experienced senior full-stack developer with experience in real-time web applications, databases, server infrastructure and live data. ## Core Concept The system should have one central backend/database, with several different web interfaces all receiving the same live data. The basic principle is: Referee enters score once - entire system updates automatically. The live data should be available to: Referees, Tournament Desk, TV Screens, Spectators, OBS and YouTube. ## 1. Court / Referee Interface We have 7 squash courts. Each court should have its own interface, for example: /court/1 /court/2 /court/3 ... /court/7 The referee should be able to: * Select players * See player names, clubs and flags * Enter points live * See current game and match score * Start and end games * Finish matches * See clear match status The interface must be extremely simple and fast to use on tablets and touchscreens. The scoring system must follow international squash rules. It should support configurable formats such as: * Best of 3 * Best of 5 * 90-second game breaks * 120-second game breaks * Other configurable timing and rules where appropriate These settings should be configurable rather than hardcoded. ## 2. Tournament Control Dashboard A separate interface for the tournament desk. It should provide a live overview of all 7 courts. The tournament desk should be able to see: * Matches currently playing * Live scores * Current game * Match duration * Game breaks * Completed matches * Available courts * Upcoming and next matches * Match status The goal is to make tournament scheduling and court turnover much easier. ## 3. Public / TV Display A separate public-facing website for TV screens around the club. It should display live information such as: * Current matches * Court numbers * Player names * Flags * Scores * Games * Match status * Upcoming matches It must update automatically without manual refresh. Possible layouts should include: * All 7 courts on one screen * Focus on one court * Current matches and upcoming matches The display should be optimized for large TVs. ## 4. OBS / YouTube Streaming Overlays This is an important part of the project. We stream selected squash matches through OBS to YouTube. We need dedicated web-based graphics that can be added to OBS as Browser Sources. For example, a live score overlay showing: Player A - 8 Player B - 6 Game 3 The overlay must automatically update whenever the referee changes the score. We would like several layouts, such as: * Live score * Full match information * Player information * Starting soon * Match finished * Lower third * Tournament information The graphics should support transparent backgrounds so they can be placed over the live video. OBS should simply load a URL/browser source and receive the live information automatically. ## 5. Admin System We need a secure admin area where the club can manage the system without depending on the developer. Admin should be able to: * Manage users * Manage courts * Manage players * Manage tournaments * Manage matches * Configure scoring and timing settings * Correct matches and scores * View system status * View errors and logs * Restart or redeploy relevant application services We also want the system designed with: * Health checks * Automatic restart after crashes * Error logging * Monitoring * Database backups * Recovery procedures The goal is that the system can run an entire tournament day without developer intervention. ## 6. Reliability and Connection Handling Reliability is one of the main reasons we are replacing the current system. The new system must be designed as a production system, not a prototype. It should handle: * 7 simultaneous courts * Multiple connected spectators * TV displays * Multiple OBS connections * Browser refreshes * Server restarts * Temporary network and internet problems If a referee temporarily loses connection, the system should clearly indicate this and prevent score data from silently disappearing. Please explain your proposed solution for handling temporary connection loss. ## 7. Real-Time Architecture Real-time communication is essential. When a referee changes a score, relevant clients should receive the update immediately. For example: Referee -> Backend -> Tournament Dashboard, TV Display and OBS We expect a suitable real-time architecture such as WebSockets, [login to view URL], Server-Sent Events or similar. Please explain what you would recommend and why. ## 8. Database and Match History All matches and scores must be stored permanently. We want to retain information such as: * Tournament * Match ID * Court * Players * Start and end time * Points * Games * Final result * Match status * Relevant timestamps Historical matches should be searchable through the admin system. ## 9. Ownership and Handover This is extremely important. The club must have full ownership and access to the entire system. We require access to: * Full source code * Git repository * Hosting and server * Database * Domain and DNS * Deployment * Backups * Configuration * Documentation The system must not depend on the developer's private server or account. We must be able to change developer in the future if necessary. A complete technical handover is required. ## 10. Design We want a modern, professional sports and broadcast-style design. Clean, minimal, fast and easy to understand. The system should work well across: * Tablets * Computers * Mobile * Large TV screens * OBS and streaming We will provide our club branding, logos, colours and design direction. ## 11. Technology We are open to your recommended technology stack. Experience with the following is highly relevant: * React / [login to view URL] * Node.js / Python * TypeScript * PostgreSQL / MySQL * WebSockets / [login to view URL] * REST APIs * Authentication * Linux and server administration * Cloud hosting * Git * Docker * OBS Browser Sources You do not need to use these exact technologies, but please explain your choices. ## 12. Who We Are Looking For We are looking for a senior developer or very experienced small team. You should have proven experience with: * Real-time web applications * Live dashboards * Multi-user systems * Database-backed applications * WebSockets and real-time communication * Production server infrastructure Experience with sports scoring, tournament systems, live broadcasting or OBS is a major advantage. We are not necessarily looking for the cheapest developer. Reliability, architecture and long-term maintainability are more important than the lowest price. We want a developer who can challenge our ideas and suggest better technical solutions where appropriate. ## 13. Please Answer These Questions To avoid generic copy/paste proposals, please answer: 1. Show us 2 to 3 real-time web applications you have built. 2. Have you built systems using WebSockets or other real-time technology? Please explain briefly. 3. Have you worked with OBS Browser Sources or streaming overlays? 4. What technology stack would you recommend for this project and why? 5. How would you design the system to automatically recover after a crash? 6. How would you handle temporary internet or network loss on a referee tablet? 7. How would you structure the database and real-time architecture? 8. What is your estimated: * Development time * Fixed project cost * Monthly hosting cost 9. Are you comfortable providing complete source code and technical documentation? 10. Who will actually be doing the development? ## Final Goal We want a reliable, professional squash scoring platform where one referee enters the score once, and every relevant screen updates automatically. The system should make our tournaments easier to run, provide spectators with live information, and allow us to produce professional-looking live squash broadcasts through OBS and YouTube. We already have a working system that can be used as a reference for existing functionality. The new system should not simply copy the old system. We want to fix its weaknesses, improve the user experience and build a proper, maintainable platform that the club owns and controls.
Project ID: 40700309
32 proposals
Remote project
Active 1 min ago
Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
32 freelancers are bidding on average €753 EUR for this job

Hi, This project involves developing a scoring and tournament management system with a clear full stack scope including React.js frontend and Node.js backend, alongside MySQL and PostgreSQL databases. The main engineering risk lies in ensuring data consistency and low-latency updates during live match scoring. I usually structure systems by separating data ingestion, real-time processing, and frontend update layers to maintain responsiveness and reliability under concurrent user interactions. The Custom Feature Development & Integration project reflects my capability to dive into existing codebases, optimize database interactions, and build maintainable UI features aligned with business needs. I typically design database schemas and API layers to ensure transactional integrity and smooth user experience, especially where real-time scoring updates are critical. Systems I build are designed for long-term maintainability and scalability in production environments. I would first validate the data flow between the two databases and map out the real-time update pipeline to ensure consistency and performance. Thanks, Hercules
€500 EUR in 7 days
7.3
7.3

Hello, As a senior full-stack developer with expertise in real-time web applications, databases, and server infrastructure, I understand the challenges you face with the current squash scoring system. I have successfully delivered similar projects in the past, ensuring stability and scalability while enhancing functionality. My approach involves creating a centralized backend with separate interfaces for referees, tournament control, and public displays. I propose using technologies like React.js, Node.js, PostgreSQL, and WebSockets for real-time communication. Additionally, I recommend implementing automated recovery procedures for system crashes and handling temporary connection losses effectively. I have experience in building real-time web applications and working with OBS Browser Sources for streaming overlays. I am committed to providing a modern, reliable solution that meets your specific requirements. Let's discuss how I can help streamline your squash tournaments and elevate the overall experience. Looking forward to further discussing your project needs. Best regards,
€500 EUR in 7 days
5.8
5.8

Hi, Fernando here from Mexico. I’d build the Real Time Squash Scoring & Tournament System around one central backend, PostgreSQL and WebSockets, with separate referee, tournament, TV and OBS Browser Source interfaces. The key constraints I’d address first are 7 simultaneous courts, immediate score updates, permanent match history and recovery after crashes or network loss. For referee tablets, I’d use local pending score state with server acknowledgements and idempotent events, so a reconnect cannot silently lose or duplicate a score. Docker, health checks, automatic service restart, logging and backups would keep the tournament running without developer intervention. I’ve worked with real time streaming systems using Golang and MediaMTX, where live state must remain synchronized across connected clients. For the first reviewable step, I’d build one complete court flow through the backend and live display, including reconnect handling. Bests
€250 EUR in 3 days
4.8
4.8

I've spent 20+ years building real-time web systems on Node and TypeScript with React, PostgreSQL and WebSockets, the kind where many screens have to agree on one live state. I do the development myself. You have already lived through the failure that matters here: the system drops in the middle of a tournament day and the one person who can fix it is hard to reach. What actually breaks in the room is a referee tablet losing Wi-Fi between rallies, a server restart while four courts are mid-game, and an OBS browser source sitting frozen on a stale score while the stream keeps rolling. How I would work it: 1) One backend owns match state, and the referee tablets, desk, TV screens and overlays all read the same live feed. 2) A tablet that goes offline keeps taking points and shows the referee it is offline, then reconnects with nothing lost and nothing counted twice. 3) Every screen rebuilds itself after a refresh, a crash or a restart, break clocks included. 4) The admin area, health checks, logging and backups go in from day one, so the club runs a whole tournament day without me. Should the backend run on a machine inside the club so the courts and TVs keep working through an internet outage, and do the matches in your current system need to carry over? Please contact me to discuss the details.
€500 EUR in 7 days
4.6
4.6

Odense C, Denmark
Payment method verified
Member since Aug 31, 2015
€8-30 EUR
€8-30 EUR
€30-250 EUR
€30-250 EUR
€8-30 EUR
₹12500-37500 INR
₹12500-37500 INR
min ₹2500 INR / hour
₹100-400 INR / hour
$750-1500 CAD
$250-750 USD
₹12500-37500 INR
₹12500-37500 INR
₹12500-37500 INR
₹600-1500 INR
$250-750 USD
$10-30 AUD
₹750-1250 INR / hour
$250-750 USD
₹750-1250 INR / hour
₹12500-37500 INR
₹600-700 INR
₹12500-37500 INR
$250-750 USD
$250-750 USD