Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/saraasgari99/soccerspotlight

Web app for querying, analyzing, and visualizing large sports data using AWS, SQL/NoSQL design, and query optimization.
https://github.com/saraasgari99/soccerspotlight

aws cloud-services database-design database-management javascript nodejs nosql oracle-database query-optimization react sql webapp

Last synced: about 1 month ago
JSON representation

Web app for querying, analyzing, and visualizing large sports data using AWS, SQL/NoSQL design, and query optimization.

Awesome Lists containing this project

README

        

## Description
SoccerSpotlight is a web app for querying, analyzing, and visualizing large sports (soccer) data using HTML/CSS/JavaScript, AWS, Oracle, React, Node.js.

Using this app you can learn interesting statistics about players, teams, match-ups, and world cups.

## Running
This app runs using node js and react. To run this, open two terminals (one cd into the client folder, the other cd into the server folder). Do 'npm install' on both
terminals, and then do 'npm start'.

## SearchPlayersPage.js
This page allows the user to input a range of several metrics, like height, stamina, and agility. In the backend, the page queries the database to return all players who fit the metrics.

## SearchTeamsPage.js
This page allows the user to input a range of several metrics, like defensive pressure and aggression. In the backend, the page queries the database to return all teams who fit the metrics.

## WorldCupPlayers.js
This page is similar to SearchPlayersPage.js in that a user inputs metrics to search for specific players. It uses the same metrics as SearchPlayersPage.js, except it only looks at players that were in the World Cup 2018. It also combines information from both datasets, while SearchPlayersPage.js only uses information from the first dataset.

## SearchMatchupPage.js
This page allows the user to input the name of two teams. The page returns any matches that were played between these two teams, as well as the final score of the match. It queries the ‘Matches’ table based on the team names.

## PlayerInfo.js
This page displays unique information about a given player. It combines information from the two datasets. It displays many more metrics than SearchPlayersPage.js, including all the teams a player has played on.

## TeamInfo.js
This page displays unique information about a given team. It has certain metrics about a team, averaged across all players on that team. It also has the class of that metric (high, medium, or low), compared to all other teams. It displays more information than SearchTeamsPage.js.