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
A full-stack nutrition, exercise, and hydration tracking application built with React, Node.js, Express.js, and Microsoft SQL Server.
The system is designed around date-based tracking, authenticated user flows, and modular frontend-backend separation. It supports meal logging, exercise logging, water tracking, and dashboard-driven interaction through a structured full-stack architecture.
UI rendering, state management, and user interaction
Backend (Node.js + Express)
API layer, authentication, and business logic
Database (MSSQL)
Persistent storage for user and activity data
The system is designed with a clear separation between frontend and backend, enabling modular development, scalability, and maintainability.
Engineering Decisions
Data Strategy
Approach
Description
Custom Dataset
Backend uses a curated food dataset instead of relying solely on external APIs
Consistency
Ensures stable naming, structure, and predictable data behavior
Localization
Provides Turkish food data coverage
Extensibility
System is designed to support future API integrations
Hybrid Data Handling
Data Type
Source
Food Data
Static dataset (backend-controlled)
Exercise Data
Dynamic API-based or normalized backend source
This hybrid approach demonstrates both controlled data management and external API integration capability.
Architecture Strategy
Principle
Description
Layered Architecture
Separation of controllers, services, repositories, and middleware
Modularity
Independent frontend and backend layers
Scalability
Designed for future feature and data expansion
Maintainability
Clear separation of concerns simplifies debugging and updates
UI/UX Strategy
Decision
Reason
Drawer-based input system
Prevents navigation disruption and preserves dashboard context
Dashboard-centered flow
Keeps user interactions within a single view
Custom CSS approach
Provides full control over layout and design
Component-based structure
Enables reusable and maintainable UI elements
System Capabilities
Domain
Capability
Authentication
Secure user registration, login, and session management
Meal Tracking
Create, retrieve, and delete date-based meal records
Exercise Tracking
Create, retrieve, and delete exercise records
Hydration Tracking
Track and update daily water consumption
Date-Based Filtering
Filter all records by selected date
Dashboard
Display aggregated daily metrics and summaries
Real-Time UI Updates
Update UI state without full page reload
Data Management
Hybrid approach using static datasets and API-driven data
Persistence
MSSQL-backed storage for all user-generated data
Architecture
Layered backend with modular frontend structure
Architecture
Backend Architecture
Layer
Responsibility
Controllers
Handle HTTP requests and responses
Services
Contain business logic
Repositories
Manage database operations
Middleware
Handle authentication and request validation
Frontend Architecture
Layer
Responsibility
Pages
Route-level UI views
Components
Reusable UI elements
Services
API communication layer
State
Client-side state management
Data Flow
Read Flow
User selects date
→ Frontend sends request with date parameter
→ Backend processes request
→ Database query is executed
→ Filtered data is returned
→ UI updates without full page reload
Write Flow
User submits data (meal / exercise / water)
→ Frontend sends API request
→ Backend validates payload
→ Data is stored in MSSQL
→ Updated data is returned
→ UI reflects changes instantly
Technologies
Layer
Technology
Purpose
Frontend
React.js
Component-based UI rendering
Frontend
JavaScript (ES6+)
Application logic
Frontend
CSS
Custom styling and layout control
Frontend
React Router
Client-side routing
Backend
Node.js
Runtime environment
Backend
Express.js
REST API and routing
Database
Microsoft SQL Server
Relational data persistence
DB Client
mssql
MSSQL connection and query execution
Auth
JSON Web Token (JWT)
Authentication and session management
Security
bcrypt
Password hashing
Getting Started
Prerequisites
Node.js
npm
Microsoft SQL Server
Git
Clone Repository
git clone https://github.com/tugcesogukkuyu/daily-fuel-tracker-web.git
cd daily-fuel-tracker-web
A responsive nutrition and exercise tracking web app built with React, Vite, and custom CSS. It includes dashboard tracking, meal and exercise logging, calendar views, blog content, and a scalable structure prepared for backend and database integration.