You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
FitCore is a cross-platform fitness app that offers AI-generated personalised meal plans and premium workout videos. The backend will be built using Django & Django REST Framework to serve as a robust API-driven system for both Android and ios clients.
Users will be able to:
Watch categorised workout videos
Receive AI-based meal plans
Track health data via smart devices or manual input
Subscribe or make one-time purchases for content
ποΈ FitCore System Architecture Overview
The FitCore app will follow a client-server architecture with several key components:
All endpoints are categorised by service, along with HTTP methods, descriptions, and estimated implementation times.
π Authentication Service
Endpoint
Method
Description
Time Estimate
/api/auth/register
POST
Register a new user
1 day
/api/auth/login
POST
Login with email/password
1 day
/api/auth/social/google
POST
Google OAuth login
1.5 days
/api/auth/social/apple
POST
Apple OAuth login
1.5 days
/api/auth/refresh-token
POST
Refresh JWT token
0.5 day
/api/auth/password-reset
POST
Request password reset
1 day
/api/auth/password-reset/confirm
POST
Confirm password reset
1 day
π€ User Service
Endpoint
Method
Description
Time Estimate
/api/users/profile
GET
Get user profile
0.5 day
/api/users/profile
PUT
Update user profile
0.5 day
/api/users/settings
GET
Get user settings
0.5 day
/api/users/settings
PUT
Update user settings
0.5 day
/api/users/progress
GET
Get user fitness progress
1 day
/api/users/favorites
GET
Get user favorite workouts/meals
0.5 day
/api/users/favorites
POST
Add to favorites
0.5 day
/api/users/favorites/:id
DELETE
Remove from favorites
0.5 day
/api/users/dashboard
GET
Get user dashboard summary
undefine
𧬠Health Data Service
Endpoint
Method
Description
Time Estimate
/api/health/data
GET
Get user health data
1 day
/api/health/data
POST
Add manual health data
1 day
/api/health/sync/google-fit
POST
Sync with Google Fit
undefine
/api/health/sync/apple-health
POST
Sync with Apple HealthKit
undefine
/api/health/metrics
GET
Get user health metrics
1 day
/api/health/goals
GET
Get fitness goals
0.5 day
/api/health/goals
PUT
Update fitness goals
0.5 day
ποΈββοΈ Workouts
Endpoint
Method
Description
Time Estimate
/api/workouts
GET
List workouts with filters
1 day
/api/workouts/:id
GET
Get workout details
0.5 day
/api/workouts/categories
GET
Get workout categories
0.5 day
/api/workouts/featured
GET
Get featured workouts
0.5 day
/api/workouts/:id/videos
GET
Get workout videos
1 day
/api/workouts/:id/progress
POST
Update workout progress
2 day
/api/workouts/:id/rate
POST
Rate a workout
0.5 day
/api/workouts/search
GET
Search workouts
1 day
βοΈ Admin Endpoints
Endpoint
Method
Description
Time Estimate
/api/admin/workouts
GET
List all workouts (admin)
0.5 day
/api/admin/workouts
POST
Create workout (admin)
1 day
/api/admin/workouts/:id
PUT
Update workout (admin)
1 day
/api/admin/workouts/:id
DELETE
Delete workout (admin)
0.5 day
/api/admin/videos
POST
Upload workout video (admin)
1.5 days
/api/admin/videos/:id
PUT
Update video (admin)
1 day
/api/admin/videos/:id
DELETE
Delete video (admin)
0.5 day
/api/admin/users
GET
List users (admin)
1 day
/api/admin/analytics
GET
Get platform analytics (admin)
undefine
π₯ Meal Plan Service - Manual Endpoints
Endpoint
Method
Description
Time Estimate
/api/meals/plans
POST
Create a manual meal plan
1 days
/api/meals/plans/:id
PUT
Update meal plan
1 day
/api/meals/plans/:id
DELETE
Cancel user meal plan
0.5 day
π§ AI Meal Plan Service
Endpoint
Method
Description
Time Estimate
/api/meals/plans
GET
Get user meal plans
.5 day
/api/meals/plans/generate
POST
Generate AI meal plan
undefine
/api/meals/plans/:id
GET
Get specific meal plan
.5 day
/api/meals/plans/:id
DELETE
Delete meal plan
undefine
/api/meals/templates
GET
Get meal plan templates
undefine
/api/meals/foods
GET
Search foods database
.5 day
π³ Payment Service
Endpoint
Method
Description
Time Estimate
/api/payments/subscriptions
GET
Get user subscriptions
0.5 day
/api/payments/subscriptions
POST
Create subscription
2 days
/api/payments/subscriptions/:id
PUT
Update subscription
1 day
/api/payments/subscriptions/:id/cancel
POST
Cancel subscription
1 day
/api/payments/purchases
GET
Get user purchases
0.5 day
/api/payments/purchases
POST
Make one-time purchase
2 days
/api/payments/methods
GET
Get payment methods
0.5 day
/api/payments/methods
POST
Add payment method
1 day
/api/payments/methods/:id
DELETE
Remove payment method
0.5 day
/api/payments/webhooks
POST
Payment provider webhooks
1.5 days
π Notification Service
Endpoint
Method
Description
Time Estimate
/api/notifications
GET
Get user notifications
0.5 day
/api/notifications/:id/read
PUT
Mark notification as read
0.5 day
/api/notifications/settings
GET
Get notification settings
0.5 day
/api/notifications/settings
PUT
Update notification settings
1 day
/api/notifications/subscribe
POST
Subscribe to push notifications
1 day
/api/notifications/unsubscribe
POST
Unsubscribe from push notifications
0.5 day
π Monetization
Monthly/Yearly Subscription: Unlock full access
One-time Purchase: Buy specific videos or plans
Free Tier: Access limited features and samples
ποΈ Tech Stack
Backend: Django, Django REST Framework
Database: PostgreSQL
Authentication: JWT, OAuth2
AI Integration: OpenAI API / Custom ML
Media: AWS S3 or Cloudinary
Payments: Google Play Billing, Apple IAP, Stripe (for web)
About
FitCore is a cross-platform fitness app that offers AI-generated personalised meal plans and premium workout videos. The backend will be built using Django & Django REST Framework to serve as a robust API-driven system for both Android and ios clients.