Football Dimes is a football-themed social media web application built upon the MERN stack.
It allows users to post about their favourite football players, like posts made by other users, get player-specific news, and create sections for discussing players, leagues, and clubs.
Directory server
Football Dimes Backend supports the following API endpoints:
View the complete API documentation here.
GET
/players
GET
/players/:id
GET
/players/search
POST
/players
POST
/players/:id/commentPlayer
PATCH
/players/:id
PATCH
/players/:id/likePlayer
DELETE
/players/:id
POST
/user/signup
POST
/user/signin
Directory client
-
Complete CRUD functionality
- Supports create, read, update, and delete (CRUD) operations for player cards.
-
Player profiles
- Profile features include fetching player-specific news, getting player suggestions, commenting, and more.
-
Search feature
- Search a player by name / tags.
-
Liking
- Like / unlike a player card. (Authentication required for liking)
-
Pagination
- Pagination feature for fast and smooth user experience.
-
Others
- Player cards support time stamps, edit & delete options, image (base64) & tags, and liking feature. News articles are clickable and direct you to the news source.
The website uses MongoDB cloud database for storing the data fields efficiently. Mongoose is used for creating playerCard schema and user schema (for authentication).
git clone https://github.com/Aihab1/Football-Dimes.git
# cd into server and client one by one and refer .env.example file to create your own .env file for storing environment variables. Please make sure you complete this step before running the application.
Open two terminals to run commands parallely.
First terminal (client):
cd client
npm install
Second terminal (server):
cd server
npm install
Continue where you left off (two terminals opened).
First terminal (client):
npm start
Second terminal (server):
npm start
Backend server runs on localhost:5000 and the client-side runs on localhost:3000 by default.