For creating a user
post/v1/createProfile
put/v1/users/{id}
created endpoints for creating a profile
For the IoT device to the app it would be
get/v1/analytics
post/v1/analytics
For example, a watch would send that information to the app, since the user wants to see the distance, how many calories burned in the workout, the analytics.
from the app to the microservice to save it to the bd
get/v1/distance
get/v1/caloriesBurn
get/v1/time
get/v1/analytics
it would be kinda the same
Users authenticate securely through an Identity Provider before accessing the application.
IoT devices continuously collect fitness data such as heart rate, steps, and GPS location.
The Mobile App displays workout information and receives live updates from the backend.
A WebSocket Gateway enables real-time communication between IoT devices, the mobile app, and backend services.
The Microservice processes business logic, including workout tracking and activity calculations.
An API Gateway serves as the centralized entry point for client API requests and routes them to backend services.
Redis is used as a cache to improve performance by storing frequently accessed and temporary data.
A NoSQL database persists application data, including user profiles, workout history, and activity records.
A Notification Service sends push notifications for workout milestones, reminders, and achievements.
The architecture is modular and scalable, allowing each component to be independently maintained and scaled based on demand.
Deep dive into 2-3 key components. Explain how they work, how they scale, discuss tradeoffs, capacity, and any relevant algorithms or data structures.