Skip to content

Create points-based golfing leagues to compete against your friends or social groups. Track points accrued for custom criteria and accomplishments earned during each round played. Try to earn the most points amongst your peers while staying motivated to improve your game.

Notifications You must be signed in to change notification settings

jason-roundtree/Clash_for_the_Cup

Repository files navigation

Clash for the Cup

This repo is for the front-end. Click here to go to the back-end repo.

Summary of App

Create your own golfing leagues and compete against your friends and social groups. Establish points for custom criteria and accomplishments achieved during each round played. Battle your opponents to try and earn the most points during a season (for fellow golfers, think Fed-Ex Cup® points on the PGA Tour®) while incentivizing yourself to continuously improve your game!

Technologies and methodologies used:

  • Javascript
  • React
  • HTML
  • CSS
  • Express/Node
  • RESTful API
  • MongoDB/Mongoose
  • Mocha
  • Chai/Chai-http
  • Enzyme
  • Jest
  • React Router
  • Styled Components
  • axios
  • Responsive design
  • Accessibility

Images of App:

Home Page alt text alt text alt text alt text alt text alt text

API Routes

POST league: - /league

GET all leagues: - /leagues

GET league: - /leagues/:leagueId

DELETE league: - /leagues/:id

POST league players: - /leagues/:leagueId/players

GET league players: - /leagues/:leagueId/players

POST point definitions: - /leagues/:leagueId/point-weighting

GET point definitions: - /leagues/:leagueId/point-weighting

POST round: - /leagues/:leagueId/round

GET round: - /leagues/:leagueId/round/:roundId

POST point allocation for a player in a round: - /leagues/:leagueId/:roundId/points-allocation/:playerId

GET point allocations for all players in a round: - /leagues/:leagueId/:roundId/points-allocation

GET point allocations for all players in league: - /leagues/:leagueId/points-allocation

Enchancements/updates/fixes I'd like to make in the future

  • Add user authentication
  • Add more styling and images
  • Allow user to make updates to players and point settings
  • Allow user to enter and track points earned under each point type
  • Allow decimals to be entered into point weights
  • Allow user to send emails to other players to invite them to league
  • Refactor the app to use redux or at the very least create more simplified components and lift a lot of the state up
  • Move some functions (e.g. sorting, ajax calls, etc.) into a stand-alone utilities file instead of polluting the components
  • Fix round points input so that saving a player's total only saves the input corresponding to that player instead of the last input edited
  • Add more client-side tests

About

Create points-based golfing leagues to compete against your friends or social groups. Track points accrued for custom criteria and accomplishments earned during each round played. Try to earn the most points amongst your peers while staying motivated to improve your game.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published