From My HCare (Health Tracking) App(Health Tracking) to a Small Cloud Backend
I previously worked on an Android application called HCare. The idea was related to health tracking, including calorie-related information. It was mainly a mobile application project, but while learning AWS I started thinking about what would happen if I wanted to synchronize user data across devices.
From local data to cloud data
A simple mobile application might initially look like:
1
2
3
4
Android App
|
v
Local StorageA cloud-connected version could become:
1
2
3
4
5
6
7
8
9
10
Android App
|
v
HTTPS API
|
v
AWS Backend
|
v
DatabaseThis introduces several AWS concepts.
One architecture I would explore
1
2
3
4
5
6
7
8
9
10
Android App
|
v
API Gateway
|
v
Lambda
|
v
DynamoDBThe application could send information such as:
1
2
3
4
5
{
"userId": "user123",
"date": "2026-09-22",
"calories": 1800
}The backend would validate the request and store it.
Why DynamoDB?
For this type of simple key-value/document data, DynamoDB is a service I want to learn more about.
A possible table could use:
1
2
Partition key: userId
Sort key: dateThat would allow the application to retrieve a user's records by date.
Where Lambda fits
Lambda would allow me to run backend code without maintaining a traditional server.
For example:
1
2
3
4
5
6
7
8
9
10
POST /calories
|
v
API Gateway
|
v
Lambda
|
v
DynamoDBThe Lambda function could:
- Validate the request
- Check the user identity
- Prepare the data
- Write it to DynamoDB
- Return a response
Authentication is important
Because this application deals with personal information, I would not make the API open to anyone.
One AWS service I would explore is Amazon Cognito for user authentication.
The possible flow could become:
1
2
3
4
5
6
7
8
9
10
11
12
13
User
|
Login
|
Cognito
|
Token
|
API Gateway
|
Lambda
|
DynamoDBI am still learning AWS security, so I would treat authentication and authorization as part of the project rather than something to add at the very end.
What I want to learn from this project
This project gives me a practical reason to learn:
- API Gateway
- Lambda
- DynamoDB
- Cognito
- IAM
- CloudWatch
I like this approach because I can take something I already built and gradually turn it into a cloud application instead of learning each AWS service in isolation.
I have not implemented the complete AWS architecture yet. This is the version I would like to build as I continue practicing.
Enjoyed reading this content? Let the author know!
Your likes, comments, shares, and saves help creators reach more builders.
Loading recommendations
Loading article