BugBee is a social media and forum platform exclusively for Indus University students, providing a space for discussion, collaboration, and community building.
This Project is currently in progress.
This project is licensed under the MIT License - see the LICENSE file for details.
- Restricted access to Indus University students only, verified through university email domain (indusuni.ac.in)
- Secure login system using JWT Token for authentication and authorization
- Social media features for connecting with fellow students
- AI-powered content moderation for a safe and respectful community
- All media files are securely encrypted before being stored. Ensuring sensitive content remains confidential and protected from unautorized access
- Language: Java 21, Python 3.7+
- Framework: Spring Webflux, FastAPI
- Database: PostgreSQL
- Build Tool: Maven
- Security: Spring Security
- Web Server: Netty, Uvicorn
- Build Tool: Vite, Npm
- UI Library: React
- CSS Framework: Tailwind
- Load Balancer/Reverse Proxy: Nginx
- Containerization: Docker
- Deep Learning Framework/ML Library: Hugging Face Transformers
Here's what you need to be able to run BugBee:
- Docker (Installation Guide)
- Docker Compose (Installation Guide)
Note: You do not need to install Java, Python, npm, or any other dependencies manually. Docker will automatically handle everything via pre-configured containers.
git clone https://github.com/RickinShah/BugBee.git
cd BugBee
Docker requires .env file for environment variables
cp .env.example .env
docker-compose build
Tip
You can speed up development by using the docker-compose up --build
command. This automatically rebuilds the application when changes are made.
docker-compose up
Warning
Ensure that you have sufficient disk space and system resources available. Docker images and containers can consume a significant amount of storage and memory.
Access the application at http://localhost:80/
The following directory structure is used to organize the media files uploaded by users. You can customize the location of this storage by changing the $STORAGE
environment variable in your .env
file
|- / (root) - Path described in '$STORAGE'
|- posts/
|- images/ # Supported formats: .jpg, .jpeg, .png
|- videos/ # Supported formats: .mp4, .webm
|- audios/ # Supported formats: .mp3, .wav, .ogg
|- documents/ # Supported formats: .pdf