Ensuring no hidden skeletons remain from that ‘free template’ fiasco.
30%
Parallax Image

Tennis Hero

Tennis Hero, Bucharest’s premier tennis school, needed a website that could capture leads efficiently, enhance user experience, and convert visitors into active clients. Neo Vision helped transform their digital presence into a high-impact lead generation platform.

Parallax Image

Debrief

Client
Tennis Hero
Design
Neo Vision
Role
Product Strategy, Frontend Development, Backend Development, CMS Development, DevOps, Continuous Development

Business Goals

Parallax Image
Parallax Image

Product Description

Parallax Image
Parallax Image
Parallax Image
Parallax Image

Development Process

Parallax Image
Parallax Image

Backend Development

Neo Vision’s work with Tennis Hero resulted in an industry-first online presence for a sports school in Romania. The website’s intuitive design and optimized lead-capture mechanisms positioned Tennis Hero as one of the country’s fastest-growing startups. During peak marketing campaigns, the platform successfully generated up to 50 leads a day, reflecting its role in driving business growth and establishing Tennis Hero as a top choice for tennis training.

With countless hours of tweaking, two design iterations, and thousands of tennis lessons booked, Tennis Hero now stands as a model of success in sports education.

Let
's talk about
yo
ur
project
Tennis Hero Code Snippet

jQuery(document).ready(function($) { var prices = [];

pricedata = pricedata.split(';'); for (var i = 0; i < pricedata.length; i++) { pricedata[i] = pricedata[i].split(',');

if (!(pricedata[i][0] in prices)) {
  prices[pricedata[i][0]] = {};
}

if (!(pricedata[i][1] in prices[pricedata[i][0]])) {
  prices[pricedata[i][0]][pricedata[i][1]] = {};
}

if (!(pricedata[i][2] in prices[pricedata[i][0]][pricedata[i][1]])) {
  prices[pricedata[i][0]][pricedata[i][1]][pricedata[i][2]] = {};
}

prices[pricedata[i][0]][pricedata[i][1]][pricedata[i][2]].price = pricedata[i][3];
prices[pricedata[i][0]][pricedata[i][1]][pricedata[i][2]].url = pricedata[i][4];

}

$('.selectors > div').click(function() { $(this).parent().find('.active').removeClass('active'); $(this).addClass('active');

var levelsId = $('.pricelevels > div.active').attr('id');
var lessonsId = $('.pricelessons > div.active').attr('id');

$('#hero .pricepack_price_number').html(prices[levelsId][lessonsId].hero.price);
$('#group .pricepack_price_number').html(prices[levelsId][lessonsId].group.price);
$('#community .pricepack_price_number').html(prices[levelsId][lessonsId].community.price);

$('#hero .pricepack_button').attr('href', prices[levelsId][lessonsId].hero.url);
$('#group .pricepack_button').attr('href', prices[levelsId][lessonsId].group.url);
$('#community .pricepack_button').attr('href', prices[levelsId][lessonsId].community.url);

$('.pricecoach').removeClass('active');
$('.pricecoach#level-' + levelsId).addClass('active');

});

$('.selectors > div.active').click();

$('.pricepack').click(function() { if (!window.matchMedia('(min-width: 992px)').matches) { $(this).toggleClass('hidden'); $(this).find('.pricepack_toggle i').toggleClass('fa-caret-right').toggleClass('fa-caret-down'); } });

$(window).resize(function() { if (window.matchMedia('(min-width: 992px)').matches) { $('.pricepack').addClass('hidden'); $('.pricepack_toggle i').addClass('fa-caret-right').removeClass('fa-caret-down'); } }); });

Tennis Hero Code Snippet

jQuery(document).ready(function($) { var prices = [];

pricedata = pricedata.split(';'); for (var i = 0; i < pricedata.length; i++) { pricedata[i] = pricedata[i].split(',');

if (!(pricedata[i][0] in prices)) {
  prices[pricedata[i][0]] = {};
}

if (!(pricedata[i][1] in prices[pricedata[i][0]])) {
  prices[pricedata[i][0]][pricedata[i][1]] = {};
}

if (!(pricedata[i][2] in prices[pricedata[i][0]][pricedata[i][1]])) {
  prices[pricedata[i][0]][pricedata[i][1]][pricedata[i][2]] = {};
}

prices[pricedata[i][0]][pricedata[i][1]][pricedata[i][2]].price = pricedata[i][3];
prices[pricedata[i][0]][pricedata[i][1]][pricedata[i][2]].url = pricedata[i][4];

}

$('.selectors > div').click(function() { $(this).parent().find('.active').removeClass('active'); $(this).addClass('active');

var levelsId = $('.pricelevels > div.active').attr('id');
var lessonsId = $('.pricelessons > div.active').attr('id');

$('#hero .pricepack_price_number').html(prices[levelsId][lessonsId].hero.price);
$('#group .pricepack_price_number').html(prices[levelsId][lessonsId].group.price);
$('#community .pricepack_price_number').html(prices[levelsId][lessonsId].community.price);

$('#hero .pricepack_button').attr('href', prices[levelsId][lessonsId].hero.url);
$('#group .pricepack_button').attr('href', prices[levelsId][lessonsId].group.url);
$('#community .pricepack_button').attr('href', prices[levelsId][lessonsId].community.url);

$('.pricecoach').removeClass('active');
$('.pricecoach#level-' + levelsId).addClass('active');

});

$('.selectors > div.active').click();

$('.pricepack').click(function() { if (!window.matchMedia('(min-width: 992px)').matches) { $(this).toggleClass('hidden'); $(this).find('.pricepack_toggle i').toggleClass('fa-caret-right').toggleClass('fa-caret-down'); } });

$(window).resize(function() { if (window.matchMedia('(min-width: 992px)').matches) { $('.pricepack').addClass('hidden'); $('.pricepack_toggle i').addClass('fa-caret-right').removeClass('fa-caret-down'); } }); });