NutriFuel is an intelligent nutrition tracking application designed specifically for travelers. Whether you're exploring Tokyo's ramen shops, sampling tapas in Barcelona, or enjoying street food in Bangkok, NutriFuel helps you maintain your health goals while experiencing authentic local cuisine.
The Challenge: Traveling often means sacrificing your nutrition goals or missing out on local culinary experiences. Traditional nutrition apps don't understand local cuisines or account for timezone changes.
Our Solution: NutriFuel combines AI-powered meal analysis with cultural food knowledge across 28 countries and 9 languages. Get personalized meal plans that embrace local dishes while keeping you on track with your health goals.
- 🎯 Smart Onboarding: Personalized nutrition goals based on your profile, dietary restrictions, and preferences
- 🌐 Multi-Language Support: Full support for 9 languages with localized date/time formats
- 🍽️ Local Cuisine Discovery: AI-powered recommendations for local dishes across 28 countries
- 📊 Real-Time Nutrition Tracking: Monitor calories, macros, and water intake with visual progress rings
✈️ Trip Planning: Plan meals ahead with timezone-aware nutrition adjustments and local nutritionist insights- 📸 Meal Analysis: Snap photos of your meals for instant AI-powered nutrition breakdown
- 🥗 Menu Scanner: Analyze restaurant menus to find suitable options with allergen warnings
- 🔄 Nutrium Integration: Connect with Nutrium for professional nutrition plan synchronization
- 💧 Hydration Tracking: Stay hydrated with smart water intake tracking and reminders
- 🌙 Dark Mode: Beautiful light and dark themes with seamless switching
- 🔒 Privacy-First: All data stored locally on your device - no cloud accounts required
- Node.js: 18.0 or higher (Download)
- pnpm: 8.0 or higher (recommended) - Install with
npm install -g pnpm- Alternatively: npm or yarn
- OpenAI API Key: Get yours at platform.openai.com
- Can be configured later during app setup
-
Clone the repository
git clone https://github.com/Diogo-Rodriigues/Lifehackers-BugsByte-Hackathon-26.git cd NutriFuel -
Install dependencies
pnpm install
-
(Optional) Set up environment variables
Create a
.env.localfile in the root directory to set a default API key:NEXT_PUBLIC_DEFAULT_API_KEY=your_openai_api_key_here
Note: You can also configure your API key later during the app's onboarding process.
-
Run the development server
pnpm dev
-
Open your browser
Navigate to http://localhost:3000
nutrifuel/
├── app/ # Next.js app directory
│ ├── api/ # API routes
│ │ ├── adapt-plan/ # Meal plan adaptation
│ │ ├── analyze-meal/ # Meal photo analysis
│ │ ├── analyze-menu/ # Menu scanning
│ │ ├── dishes/ # Local cuisine discovery
│ │ ├── dynamic-targets/ # Nutrition goal calculations
│ │ ├── meal-plan/ # Trip meal planning
│ │ ├── nutrition-goals/ # Goal estimation
│ │ └── nutrium/ # Nutrium integration
│ ├── globals.css # Global styles
│ ├── layout.tsx # Root layout
│ └── page.tsx # Main application page
├── components/ # React components
│ ├── ui/ # shadcn/ui components
│ ├── bottom-nav.tsx # Navigation bar
│ ├── dashboard.tsx # Main dashboard
│ ├── meal-analysis.tsx # Meal analyzer
│ ├── meal-logger.tsx # Manual meal entry
│ ├── onboarding.tsx # User onboarding flow
│ ├── settings-page.tsx # Settings & profile
│ ├── splash-screen.tsx # App splash screen
│ ├── trip-planning.tsx # Trip planning interface
│ ├── trip-review.tsx # Trip review screen
│ └── welcome-screen.tsx # Welcome screen
├── lib/ # Utility functions
│ ├── api.ts # API client
│ ├── constants.ts # App constants
│ ├── language.ts # i18n support
│ ├── meal-culture.ts # Cultural meal data
│ ├── store.ts # Local storage management
│ ├── types.ts # TypeScript types
│ └── utils.ts # Helper functions
├── public/ # Static assets
│ ├── favicon_io/ # Favicons
│ ├── nutritionists/ # Nutritionist avatars
│ ├── logo.png # App logo
│ └── nutrium-logo.png # Nutrium logo
├── hooks/ # Custom React hooks
└── docs/ # Documentation
- Next.js 16.1.6: React framework with App Router
- React 19.2.3: UI library
- TypeScript 5.7.3: Type safety
- Tailwind CSS 3.4.17: Utility-first styling
- shadcn/ui: High-quality UI components
- Radix UI: Accessible component primitives
- Lucide React: Beautiful icons
- Local Storage: Client-side data persistence
- React Hooks: Component state management
- OpenAI GPT-4: Meal analysis, menu scanning, and recommendations
- Nutrium API: Professional nutrition plan integration
- date-fns: Date manipulation
- react-day-picker: Calendar component
- recharts: Data visualization
- sonner: Toast notifications
- next-themes: Theme management
- Language Selection: Choose from 9 supported languages
- Personal Profile: Age, sex, height, weight, and fitness goals
- Allergies & Dietary Preferences: Comprehensive allergen tracking with AI safety guardrails
- Nutrition Method: Choose between AI estimation or Nutrium sync
- Trip Details: Destination, dates, times with localized date/time pickers and timezone awareness
- Cuisine Discovery: Browse and select local dishes you want to try
- Meal Plan Generation: AI creates a personalized itinerary for your trip
- Nutritionist Review: Optional local nutritionist verification
- Local Cuisine Discovery: AI-curated local dishes filtered by your dietary needs
- Meal Plan Generation: Personalized itinerary for your entire trip
- Nutritionist Review: Professional tips from local nutrition experts
- Caffeine Management: Jet lag mitigation recommendations
- Daily Overview: Calories, macros, water intake at a glance
- Interactive Charts: Visual progress tracking
- Meal Log: Complete history of logged meals
- Quick Actions: Fast access to meal logging and analysis
- Photo Analysis: Take a picture, get instant nutrition breakdown
- Menu Scanning: Scan restaurant menus for suitable options
- Manual Entry: Traditional food diary with autocomplete
9 Languages Fully Supported:
- 🇬🇧 English (EN)
- 🇵🇹 Portuguese - Portugal (PT-PT)
- 🇧🇷 Portuguese - Brazil (PT-BR)
- 🇪🇸 Spanish (ES)
- 🇫🇷 French (FR)
- 🇩🇪 German (DE)
- 🇮🇹 Italian (IT)
- 🇨🇳 Chinese (ZH)
- 🇯🇵 Japanese (JA)
Localized Features:
- Translated UI and messaging
- Language-specific date formats (MM/DD/YYYY, DD/MM/YYYY, YYYY/MM/DD, etc.)
- Localized time pickers with appropriate AM/PM indicators
- Cultural meal naming and descriptions
- Proper abbreviations and punctuation per language
NutriFuel integrates with Nutrium, the leading nutrition software for healthcare professionals, to provide you with expert-level nutrition planning.
- Professional Nutrition Plans: Import meal plans created by certified nutritionists
- Seamless Sync: Connect your Nutrium account during onboarding
- Expert Guidance: Combine AI recommendations with professional oversight
- Trusted Platform: Used by thousands of nutrition professionals worldwide
Whether you're working with a nutritionist or prefer AI-guided planning, NutriFuel adapts to your needs.
NutriFuel currently supports nutrition guidance for 28 countries:
🇵🇹 Portugal | 🇯🇵 Japan | 🇹🇭 Thailand | 🇲🇽 Mexico | 🇮🇹 Italy | 🇮🇳 India | 🇫🇷 France | 🇲🇦 Morocco | 🇵🇪 Peru | 🇰🇷 South Korea | 🇪🇸 Spain | 🇹🇷 Turkey | 🇻🇳 Vietnam | 🇬🇷 Greece | 🇧🇷 Brazil | 🇨🇴 Colombia | 🇩🇪 Germany | 🇨🇳 China | 🇺🇸 United States | 🇦🇪 UAE | 🇮🇩 Indonesia | 🇦🇷 Argentina | 🇪🇬 Egypt | 🇦🇺 Australia | 🇳🇱 Netherlands | 🇨🇦 Canada | 🇱🇺 Luxembourg | 🇨🇭 Switzerland
Each destination includes:
- Local nutritionist profiles
- Cultural meal recommendations
- Timezone-aware adjustments
- Popular local dishes
The app requires an OpenAI API key for AI-powered features. You can either:
- Configure during onboarding (recommended): Enter your API key in the app's onboarding flow
- Set a default key: Create a
.env.localfile with:
| Variable | Description | Required |
|---|---|---|
NEXT_PUBLIC_DEFAULT_API_KEY |
Default OpenAI API key for AI features | Optional* |
*The app will prompt for an API key during first use if not set.
# Start development server with Turbopack
pnpm dev
# Build for production
pnpm build
# Start production server
pnpm start
# Run linter
pnpm lintThis project follows best practices:
- TypeScript: Strict type checking for reliability
- ESLint: Code linting with Next.js configuration
- Modular Architecture: Clean component separation
- Accessibility: WCAG 2.1 Level AA compliance
- Responsive Design: Mobile-first approach
- Multi-language support (9 languages)
- 28 destination countries
- AI meal analysis and planning
- Localized date/time formats
- Local nutritionist profiles
- Privacy-first local storage
- Implement cloud sync with optional user accounts
- Add social features (share meals, trips)
- Integrate with fitness trackers (Apple Health, Google Fit)
- Add recipe suggestions based on local ingredients
- Expand to 50+ destination countries
- Add more language support (Arabic, Hindi, Korean)
- Mobile app (React Native)
- Progressive Web App (PWA) with offline mode
- Browser extension for quick menu scanning
- Export nutrition reports (PDF, CSV)
- Integration with travel apps
This project is licensed under the MIT License - see the LICENSE file for details.
We're grateful to these amazing technologies and partners:
- Nutrium - Professional nutrition software integration, enabling expert meal planning
- OpenAI - GPT-4 API powering intelligent meal analysis and recommendations
- shadcn/ui - Beautiful, accessible UI component library
- Radix UI - Unstyled, accessible component primitives
- Tailwind CSS - Utility-first CSS framework
- Next.js - React framework for production
- Unsplash - High-quality destination imagery
- LifeHackers Team - Design, development, and innovation
- 📧 Contact the LifeHackers team
This project was created for the BugsByte 2026 Hackathon by the LifeHackers team.
Want to learn more about NutriFuel's vision, features, and impact?
➡️ View our complete pitch presentation
Discover:
- The problem we're solving for travelers
- Our unique approach to nutrition tracking
- Technical architecture and AI integration
- Market opportunity and future roadmap
- Live demo walkthrough
Made with ❤️ for travelers who care about their health
© 2026 LifeHackers Team. All rights reserved.

