This project contains intentionally vulnerable applications across various technology stacks. It is designed for security training and testing purposes. All secrets and passwords are safe to be leaked as part of this educational exercise.
The application is divided into three main components:
- Backend: Python FastAPI with MongoDB
- Frontend: Streamlit
- Admin Panel: Java Spring
The backend is built using FastAPI, a modern, fast (high-performance) web framework for building APIs with Python. It connects to a MongoDB database for data storage.
The frontend is built using Streamlit, a simple and powerful tool to create web apps for machine learning and data science projects.
The admin panel is developed using Java Spring, providing administrative control over the application.
The entire application can be deployed using Docker Compose. Ensure that you have Docker and Docker Compose installed on your machine.
- Docker and Docker Compose installed
- Port 8080 should be free on your local machine
-
Clone the repository:
git clone <repository_url> cd <repository_directory>
-
Run Docker Compose:
docker compose up
-
Docker Compose will automatically build and start all services.
-
Access the application at the following URLs:
- Backend (FastAPI):
http://energy-api.docker.localhost
- Frontend (Streamlit):
http://dashboard.docker.localhost
- Admin Panel (Java Spring):
http://adminpanel.docker.localhost
- Backend (FastAPI):
To stop the application, run:
docker compose down
This project is intentionally vulnerable and should only be used in controlled environments for security training and testing. It is not meant for production use.
By using this project, you acknowledge that it is intended for educational purposes only. Any vulnerabilities, secrets, or passwords exposed here are safe to be leaked and should not be used in real-world applications.
Happy Hacking!