This project is a web-based dashboard to manage and monitor an SMS system running on a Linux server. It consists of a Python backend using FastAPI, a React frontend, and uses MongoDB and MySQL for data storage.
- Python 3.8+
- Node.js 14+
- MongoDB
- MySQL
- Prometheus
- Grafana
- Clone the repository:
git clone https://github.com/yourusername/sms-management-system.git
cd sms-management-system- Set up the backend:
cd backend
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
pip install -r requirements.txt- Set up the databases:
python init_db.py- Set up the frontend:
cd ../frontend
npm install- Configure Prometheus:
- Copy the
prometheus.ymlfile to your Prometheus configuration directory.
- Configure Grafana:
- Import the
grafana-dashboard.jsonfile into your Grafana instance.
- Start the backend:
cd backend
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
uvicorn main:app --reload- Start the frontend:
cd frontend
npm run dev-
Start Prometheus and Grafana according to your system configuration.
-
Access the application at
http://localhost:5173(or the port specified by Vite).
- User authentication
- Real-time SMS program management
- SMS metrics visualization
- Integration with Prometheus and Grafana for monitoring
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE.md file for details.