Cloud monitoring dashboard for real-time health checks, latency tracking, and error log aggregation across distributed cloud services.
Nephos is a comprehensive monitoring solution that provides:
- Real-time Health Checks: Continuous monitoring of cloud service endpoints
- Latency Tracking: Performance metrics and response time analytics
- Error Log Aggregation: Centralized error tracking and alerting
- Analytics Dashboard: Beautiful visualizations powered by Next.js
- Scalable Architecture: Serverless backend on AWS Lambda + DynamoDB + Snowflake
- Framework: Next.js 16 with React 19
- Styling: Tailwind CSS v4
- Language: TypeScript
- Deployment: Vercel (recommended)
- Runtime: Node.js 20 on AWS Lambda
- API: AWS API Gateway (HTTP API)
- Database: DynamoDB (real-time) + Snowflake (analytics)
- Infrastructure: Serverless Framework
- API Functions: RESTful endpoints for metrics, alerts, and analytics
- Sentinel Function: Scheduled health checker (runs every 5 minutes)
- ETL Pipeline: DynamoDB → Snowflake data synchronization
- Dashboard: Interactive monitoring interface
- Node.js 20+
- AWS Account
- Snowflake Account
- AWS CLI configured
# Clone the repository
git clone <your-repo-url>
cd Nephos
# Install backend dependencies
cd backend
npm install
# Install frontend dependencies
cd ../client
npm install- Backend Setup:
cd backend
cp .env.example .env
# Edit .env with your AWS and Snowflake credentials- Frontend Setup:
cd client
cp .env.example .env.local
# Edit .env.local with your API endpoint- AWS Setup:
chmod +x scripts/setup-aws.sh
./scripts/setup-aws.sh- Snowflake Setup:
chmod +x scripts/setup-snowflake.sh
./scripts/setup-snowflake.sh
# Execute generated SQL in Snowflake consolecd backend
chmod +x scripts/deploy.sh
./scripts/deploy.sh dev us-east-1cd client
npm run build
vercel --prodBackend:
cd backend
./scripts/local-dev.sh
# API available at http://localhost:3000Frontend:
cd client
npm run dev
# App available at http://localhost:3000Nephos/
├── backend/
│ ├── functions/
│ │ ├── api/
│ │ │ ├── metrics/ # Metrics API
│ │ │ ├── alerts/ # Alerts API
│ │ │ ├── analytics/ # Analytics API
│ │ │ └── instances/ # Instances API
│ │ ├── etl/
│ │ │ └── dynamodb-to-snowflake/ # ETL pipeline
│ │ └── sentinel/ # Health checker
│ ├── scripts/
│ │ ├── deploy.sh # Deployment script
│ │ ├── local-dev.sh # Local development
│ │ └── destroy.sh # Cleanup script
│ ├── serverless.yml # Infrastructure config
│ └── .env.example # Environment template
├── client/
│ ├── src/ # Next.js app
│ ├── public/ # Static assets
│ └── .env.example # Environment template
├── scripts/
│ ├── setup-aws.sh # AWS setup helper
│ └── setup-snowflake.sh # Snowflake setup helper
├── .github/
│ └── workflows/
│ ├── ci.yml # CI pipeline
│ ├── deploy-backend.yml # Backend deployment
│ └── deploy-frontend.yml # Frontend deployment
├── DEPLOYMENT.md # Detailed deployment guide
└── README.md # This file
GET /metrics- List all metricsPOST /metrics- Create metricGET /metrics/{id}- Get metric by ID
GET /alerts- List all alertsPOST /alerts- Create alertGET /alerts/{id}- Get alert by IDPUT /alerts/{id}- Update alertDELETE /alerts/{id}- Delete alert
GET /analytics- Get analytics dataGET /analytics/dashboard- Get dashboard data
GET /instances- List monitored instancesPOST /instances- Add instanceGET /instances/{id}- Get instancePUT /instances/{id}- Update instanceDELETE /instances/{id}- Delete instance
- ✅ Serverless infrastructure configuration
- ✅ DynamoDB tables for real-time data
- ✅ Snowflake integration for analytics
- ✅ CI/CD pipelines (GitHub Actions)
- ✅ Deployment scripts
- ✅ Environment configuration
- 🚧 Authentication and authorization
- 🚧 Real-time WebSocket updates
- 📋 Custom alerting rules
- 📋 Slack/Email notifications
- 📋 Multi-region support
- 📋 Advanced analytics
- 📋 API documentation
For detailed deployment instructions, see DEPLOYMENT.md.
Backend:
cd backend
./scripts/deploy.sh prod us-east-1Frontend:
cd client
vercel --prodPush to main branch to trigger automatic deployment:
git push origin mainserverless logs -f metricsApi --stage prod --tailQuery the analytics views:
METRICS_HOURLY- Hourly metric aggregationsACTIVE_ALERTS- Current active alertsINSTANCE_HEALTH- Latest health check status
See .env.example files in backend/ and client/ for all available configuration options.
The deployment creates:
- Lambda functions (6 total)
- DynamoDB tables (3 tables)
- API Gateway HTTP API
- CloudWatch log groups
- IAM roles and policies
Estimated monthly costs for dev environment: $10-45
See DEPLOYMENT.md for detailed cost breakdown.
# Backend
cd backend
npm test
# Frontend
cd client
npm test# Backend
cd backend
npm run lint
# Frontend
cd client
npm run lint- Deployment fails: Check AWS credentials and permissions
- Function timeout: Increase timeout in serverless.yml
- Snowflake connection error: Verify credentials in .env
- DynamoDB throttling: Check table capacity settings
See DEPLOYMENT.md for detailed troubleshooting.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
[Your License Here]
For issues and questions:
- Open an issue on GitHub
- Check DEPLOYMENT.md for detailed guides
Built for hackathon with:
- AWS Lambda & DynamoDB
- Snowflake
- Next.js
- Serverless Framework
Happy Monitoring! 📊✨