Welcome to **Stack-Overflow-Clone**, a platform dedicated to fostering a vibrant community of developers helping developers by providing a space to ask questions, share knowledge, and find solutions together. πβ€
- Important Links
- Technology Used
- Features
- Top Level Directory Structure
- Screenshots of the project
- Installation
- Contributions
- Usage
- Feedback
-
Deployed website π: Stack-Overflow-Clone
-
The backend is hosted here π: Stack-Overflow-Clone-Backend
Technology | Features |
---|---|
React.js | Frontend of the application |
Redux | State Management |
Node.js, Express.js | Backend of the application |
MongoDB Atlas, Mongoose | Database for the application |
Bcrypt | Password Management |
JSON Web Token | Authorization and Authentication |
Render | Deployment |
Postman | API Testing, Debugging and Documentation |
Features of our Stack Overflow Clone are as follows:
- Ask & Answer: Post your coding questions and provide answers to help fellow developers.
- Voting: Upvote helpful questions and answers to recognize and encourage valuable contributions.
- Tags & Categories: Organize content by adding relevant tags and categories to questions.
- Search: Easily find answers using our powerful search functionality.
- User Profiles: Build your developer identity, showcase your skills, and keep track of your contributions.
- Responsive Design: Enjoy a seamless experience across devices, from desktop to mobile.
βββ client # Frontend React.js directory
β βββ public # Public assets for the React app (images, etc.)
β βββ src # React application source code
β β βββ components # Reusable UI components
β β βββ pages # Individual page components
β β βββ App.js # Root component
β β βββ index.js # Entry point for React app
β β βββ ... # Other React-related files and folders
βββ server # Backend Node.js/Express directory
β βββ controllers # Controllers for handling requests
β βββ models # Database models and schemas
β βββ routes # API route handlers
β βββ utils # Utility files
β βββ views # Templates for rendering server-side views
β βββ app.js # Express app setup
β βββ package-lock.json # Node.js package lock
β βββ package.json # Node.js package information
βββ .gitignore
βββ README.md
Home Page | Tags Page |
SignUp Page | Login Page |
Question Detail Screen | Posting an Answer Screen |
All Users Screen | Ask a Question Screen |
User Profile Screen | Other User's Profile Page |
To setup the project on your local environment, follow the given steps:
- Fork the Palaksharma23/Stack-Overflow-Clone repository.
- Clone the repository:
https://github.com/<USERNAME>/Stack-Overflow-Clone.git
Replace the <USERNAME>
with your GitHub username.
Move to the client directory
cd client
Install the necessary dependencies
npm install
To start the server in development mode
npm start
Go to localhost:3000
to view the website.
Move to the server directory
cd server
Install the necessary dependencies
npm install
Add a config.env file in the root directory and enter your MongoDb Atlas and JWT Secret key The format of .env file should be similar to the following
CONNECTION_URL = "Mongo db url"
JWT_SECRET = "This could be anything like test"
To start the server in development mode
npm start
Server will start at PORT 5000
Your worthy contributions are most welcome to our Stack Overflow Clone website. If you have an idea for a new feature or a bug fix, please submit an issue or pull request.
Feel free to send any feedback on Twitter or file an issue.