A cloud-native FinOps dashboard to visualize AWS cost data by day, service, and region. Built with FastAPI, React (Vite), Recharts, and deployed via Docker Compose.
- 📅 View AWS daily cost trends
- 🧩 Breakdown by AWS service
- 🌍 Analyze cost by AWS region
- ✅ Toggle individual services on/off
- 🐳 Fully containerized using Docker Compose
- 🔄 Designed to support Azure and GCP in the future
- 🪙 Redis caching for faster performance and reduced AWS API cost
Layer | Tech |
---|---|
Frontend | React + Vite + Recharts |
Backend | FastAPI + Boto3 + Redis |
Infra | Docker Compose |
- Docker & Docker Compose installed
- AWS credentials with
ce:GetCostAndUsage
permissions
git clone https://github.com/NineKama/cloud-finops-dashboard.git
cd cloud-finops-dashboard
cp .env.example .env
Then fill in your AWS credentials (please refer IAM Policy below):
AWS_ACCESS_KEY_ID=your_key
AWS_SECRET_ACCESS_KEY=your_secret
AWS_DEFAULT_REGION=us-east-1
docker-compose up --build
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000/docs
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowCostExplorerReadOnly",
"Effect": "Allow",
"Action": [
"ce:GetCostAndUsage",
"ce:GetCostForecast",
"ce:GetDimensionValues",
"ce:GetReservationUtilization",
"ce:GetSavingsPlansUtilization"
],
"Resource": "*"
}
]
}
.env
is gitignored- Only least privilege IAM permissions required
- Docker images are scanned for vulnerabilities via GitHub Actions and Trivy
- AWS cost visualization
- Support Azure
- Support GCP
- User auth & login
- Save filters & preferences
- Export to CSV/PDF
Feel free to fork & submit PRs. Feedback welcome!