https://github.com/sksmagr23/codeexchange
https://github.com/sksmagr23/codeexchange
expressjs javascript mongodb nodejs stackoverflow
Last synced: 17 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/sksmagr23/codeexchange
- Owner: sksmagr23
- Created: 2024-07-06T04:40:39.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-07T17:25:34.000Z (7 months ago)
- Last Synced: 2025-06-21T12:37:30.408Z (7 months ago)
- Topics: expressjs, javascript, mongodb, nodejs, stackoverflow
- Language: EJS
- Homepage: https://codeexchange-3s2g.onrender.com
- Size: 2.99 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CodeExchange
A simplified web application that replicates core functionalities of Stack Overflow. This project is built using Node.js and MongoDB, with a EJS based frontend styled using Tailwind CSS.
## Features
- User authentication with Google and Email/password
- Question and answer management
- Basic user profiles with personal asked questions and answer given
- User can ask questions, answer others questions, delete their own questions and answers and edit their responses(CRUD)
- List all questions and view details of each question
- ```Stack Overflow API integration``` - search and display questions and answers from Stack Overflow
- Tailwind CSS for styling
- Dark/Light theme toggle with persistent user preference
- Markdown support for questions
## Tech Stack
- *Frontend*: EJS, Tailwind CSS
- *Backend*: Node.js, Express.js, Mongoose
- *Database*: MongoDB
- *External API*: Stack Exchange API (for Stack Overflow integration)
## Installation and setup
1. *Clone the repository*:
```bash
git clone https://github.com/sksmagr23/CodeExchange.git
cd CodeExchange
```
1. *Install dependencies*:
```bash
npm install
```
1. *Create a .env file in root directory and set up environment variables*:
```Env
MONGO_URL=
JWT_SECRET=
SESSION_SECRET=
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
```
> get o auth credentials from google cloud console
1. *Start the server*:
```bash
npm run dev
# The server should now be running at 'http://localhost:3000'
```