The Photography Contest Website, developed using the MERN stack (MongoDB, Express.js, React.js, Node.js), facilitates seamless participation for photographers in contests through user-friendly interfaces for photo uploads, voting, and contest management. Admins efficiently oversee contests with features for creation, updating, and deletion, ensuring smooth photo management. The platform fosters community engagement and talent showcasing, enhancing user experience and fostering a vibrant photography community.
- Registration and Login: Users can register and log in to participate in contests.
- Join Contests: Users can join ongoing contests and upload their photographs.
- Voting: Users can view contest entries and cast one vote per contest.
- Admin Login: Admins have a separate login interface.
- Contest Management: Admins can create, edit, and delete contests.
- Photo Management: Admins can view all entries in a contest and delete any inappropriate images.
- Voting: Admins can also vote in contests if desired.
- Node.js
- MongoDB
-
Clone the repository:
git clone https://github.com/atharva-narkhede/Photography_Contest_ReactJS.git cd Photography_Contest_ReactJS
-
Install dependencies:
npm install
-
Set up environment variables: Create a
.env
file in the root directory and add your MongoDB URI and other necessary configurations. -
Start the development server:
npm start
The backend of this React app is in a separate repository: Photography Contest Backend. The backend is hosted on Render.com and is used as an API in the above React app for CRUD operations.
To get a local copy of the backend up and running, follow these simple steps:
-
Clone the repository:
git clone https://github.com/atharva-narkhede/Photography_Contest_Backend.git cd Photography_Contest_Backend
-
Install dependencies:
npm install
-
Set up environment variables: Create a
.env
file in the root directory and add your MongoDB URI and server port:PORT=5000 MONGO_URI=your_mongodb_connection_string
-
Start the development server:
npm run dev
The server will start on http://localhost:5000
.
-
Fork the repository.
-
Create a new branch:
git checkout -b feature/your-feature-name
-
Make your changes and commit them:
git commit -m 'Add some feature'
-
Push to the branch:
git push origin feature/your-feature-name
-
Create a pull request.
- Live Website: Photography Contest Website
- Frontend Repository: Photography Contest ReactJS
- Backend Repository: Photography Contest Backend
This project is licensed under the MIT License - see the LICENSE file for details.
- MERN stack documentation and community.
- Contributors and users for their feedback and support.
Feel free to contribute and enhance this project to support a thriving photography community!