Overview:
This project is a clone of a popular Q/A website for programmers built using the MERN stack. The frontend is in React.js with Redux for state management, while the backend is in Node.js with Express.js and MySQL with Sequelize as the database.
Features:
- MERN Stack: Frontend in React.js with Redux, backend in Node.js with Express.js, and MySQL with Sequelize for the database.
- Manual Setup: Steps provided for setting up the project manually including cloning the code, installing modules, setting up the backend, and frontend.
- Docker Support: Instructions for setting up the backend in a Docker container, including building the Docker image and running the container with the correct environment variables.
Installation:
Manual Setup:
- Open your local CLI.
- Setup the backend code.
- Create a
.env
file following the format in.env.example
. - Clone the code and install the modules.
- Open your MySQL Client and keep the database name same in the
.env
. - Run the backend with
npm start
. - Open a new CLI terminal, go to the root folder, and setup the frontend code.
- Clone the code and install the modules.
- Run the frontend client with
npm start
.
Docker Setup:
- Setup environment variables in the
.env
file for Docker. - Build the Docker image.
- Run the container with correct MySQL Database IP.
- Access the API at the default port 5000.
Summary:
This project is a clone of a popular Q/A website using the MERN stack. It provides guidelines for setting up the project manually or using Docker, making it accessible for both frontend and backend developers. By following the provided steps, developers can easily setup and run the project in their local environment.