DevPulse is a serverless API health monitoring platform built with Spring Boot and AWS.
Developers can register API endpoints, monitor uptime and response times, store health check history, and receive notifications when services become unavailable.
This project is designed as both a real-world SaaS-style application and a hands-on learning project for mastering AWS serverless services and preparing for the AWS Certified Developer – Associate certification.
React Frontend
│
▼
API Gateway
│
Cognito JWT
│
▼
AWS Lambda (Spring Boot)
│
▼
DynamoDB
│
▼
EventBridge Scheduler
│
▼
Checker Lambda
│
┌─────┴─────┐
▼ ▼
DynamoDB SNS
(Check Logs) Alerts
- Create API monitors
- Retrieve configured monitors
- Store monitor data in DynamoDB
- Spring Boot REST API
- AWS SDK v2 DynamoDB Enhanced Client
- Delete monitors
- Monitor details endpoint
- Scheduled health checks
- Response time tracking
- Uptime percentage calculation
- CloudWatch metrics
- SNS email alerts
- Cognito authentication
- API Gateway JWT authorization
- React dashboard
- AWS SAM deployment
- CI/CD with GitHub Actions
- Java 21
- Spring Boot 3
- Maven
- AWS Lambda
- Amazon API Gateway
- Amazon DynamoDB
- Amazon EventBridge
- Amazon SNS
- Amazon Cognito
- Amazon CloudWatch
- AWS SAM
src/main/java/com/devpulse
│
├── controller/
├── service/
├── repository/
├── model/
├── dto/
├── config/
└── lambda/
POST /monitorsRequest
{
"name": "Production API",
"url": "https://api.example.com/health",
"interval": 1
}Response
{
"monitorId": "uuid",
"name": "Production API",
"url": "https://api.example.com/health",
"interval": 1
}GET /monitorsResponse
[
{
"monitorId": "uuid",
"name": "Production API",
"url": "https://api.example.com/health",
"interval": 1
}
]- Java 21
- Maven 3.9+
- AWS CLI configured
- DynamoDB table created
aws configureVerify credentials:
aws sts get-caller-identitymvn clean install
mvn spring-boot:runApplication runs on:
http://localhost:8080
| Attribute | Type |
|---|---|
| monitorId | String (PK) |
| name | String |
| url | String |
| interval | Number |
Billing Mode:
On-Demand (PAY_PER_REQUEST)
This project covers many of the services and concepts tested in the AWS Certified Developer – Associate exam:
- AWS Lambda
- API Gateway
- DynamoDB
- EventBridge
- SNS
- Cognito
- IAM
- CloudWatch
- Serverless Architecture
- AWS SAM
- Spring Boot Setup
- DynamoDB Integration
- Create Monitor API
- Get Monitors API
- Delete Monitor API
- EventBridge Scheduler
- Checker Lambda
- Check Logs Table
- SNS Notifications
- CloudWatch Metrics
- Cognito Authentication
- API Gateway JWT Authorization
- Frontend Dashboard
Built by Hamza Rafique as a serverless AWS learning project and portfolio application.