Leak It is an anonymous forum board that allows users to share and discuss topics without revealing their identities. Built with modern web technologies, this project aims to provide a secure and engaging platform for free expression and open discussions.
Status
Tech Stack
Client:
- React
- Redux with RTK Query
- tailwindcss
Server:
- Nodejs (Expressjs)
- mongodb (mongoose)
Project Overview
Leak It is an anonymous forum application created using the MERN stack (MongoDB, Express.js, React.js, and Node.js). Inspired by the 4chan forum, it allows users to express themselves and engage in discussions without revealing their identities. Only IP addresses of users are stored, ensuring anonymity.
The application follows a specific flow:
- Board: There are boards that encapsulate all other objects like threads and replies.
- Threads and Replies: Users can create boards, reply to threads, or respond to other replies.
Authentication Flow
- No authentication is required.
- A session is created for each user who visits the site, stored in the MongoDB database using the
mongodb-store
package.
API Reference
There are three core routes:
- Board route:
/api/boards
- Reply route:
/api/reply
- Thread route:
/api/thread
For detailed information on sub-routes and their respective HTTP methods, refer to the project’s README file.
Run Locally
- Clone the project repository:
git clone https://github.com/unreal0901/anonymous_forum
- Install dependencies and run the project:
# For the backend
cd backend
npm install
npm run start
# For the frontend
cd ../frontend
npm install
npm run start
Note: Make sure to set the required environment variables for both the frontend and backend, as mentioned in the project’s README file.
Environment Variables
To run this project, you will need to add the following environment variables to your .env
file:
Frontend:
REACT_APP_BASE_URL
: The URL of your backend (e.g.,http://localhost:8000
)
Backend:
NODE_ENV
: Set todevelopment
DEPLOY_STAGE
MONGODB_USERNAME
: Username for MongoDBMONGODB_PASSWORD
: Password for MongoDBMONGODB_DATABASE_NAME
: Name of the MongoDB databaseMONGODB_SESSION_DATABASE_NAME
SESSION_SECRET
Images
All Boards listing
Nested Comments similar to youtube old commenting system
Single Board with all the threads information of that board listed below
Contact
If you have any questions or inquiries about this project, feel free to reach out to me at rawatas0901@gmail.com.