This repo is for the front-end. Click here to go to the back-end repo.
Live app: https://clash-for-the-cup.herokuapp.com
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!
- Javascript
- React
- HTML
- CSS
- Express/Node
- RESTful API
- MongoDB/Mongoose
- Mocha
- Chai/Chai-http
- Enzyme
- Jest
- React Router
- Styled Components
- axios
- Responsive design
- Accessibility
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
- 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