A modern, native iOS companion app for TeslaMate
- About
- Features
- Requirements
- Installation
- Screenshots
- Getting Started
- Support
- Privacy
- Acknowledgments
T-Buddy is a beautiful, modern iOS application designed to bring your TeslaMate data to your iPhone. Built with SwiftUI and leveraging the latest iOS technologies, T-Buddy provides a seamless, native experience for monitoring your Tesla vehicle's telemetry, charges, drives, and more—all from your pocket.
T-Buddy is a passion project created for the love of technology and the Tesla community. This app is not monetized—there are no ads, no subscriptions, and no in-app purchases.
My goal is simply to share this tool with fellow Tesla and TeslaMate enthusiasts, hoping it will be as useful to you as it has been to me. If you find value in T-Buddy, consider starring this repo and sharing it with others who might benefit from it.
This is my way of giving back to the amazing open-source community that makes projects like TeslaMate possible. 🚗⚡
T-Buddy is perfect for:
- Tesla owners who already run TeslaMate to log their vehicle data
- Tech enthusiasts who want native iOS access to their vehicle telemetry
- Data-driven users who appreciate detailed insights about their charging sessions, drives, and vehicle health
- Privacy-conscious individuals who prefer self-hosted solutions over cloud-based services
- Live Dashboard: Real-time vehicle status including battery level, charging state, location, and more
- Charge History: Detailed charge session logs with cost, energy added, and efficiency metrics
- Drive History: Comprehensive trip logs with distance, duration, consumption, and route details
- Battery Health: Track degradation, charge cycles, and battery performance over time
- Vehicle Stats: Odometer, total charges, total drives, and software updates
- Multiple Vehicles: Support for monitoring multiple Tesla vehicles
- Dark & Light Mode: Beautiful adaptive UI that respects your system preferences
- Native SwiftUI: Built from the ground up with SwiftUI for iOS 26+
- Modern Design: Clean, intuitive interface with smooth navigation
- Accessibility: Full VoiceOver support, Dynamic Type, and WCAG AA compliance
- Smooth Animations: Delightful, subtle animations throughout the app
- Haptic Feedback: Tactile responses for key interactions
- No Tesla Token Access: T-Buddy never accesses, stores, or retrieves your Tesla account tokens stored in TeslaMate. The app only reads aggregated vehicle data through the TeslaMate API
- Keychain Storage: API credentials and passwords securely stored in iOS Keychain
- Local First: All data cached locally using SwiftData
- No Analytics: Zero telemetry sent to third parties
- Self-Hosted: Your data stays on your infrastructure
- Widgets: Home screen and Lock screen widgets for quick vehicle status
- Live Activities: Real-time charging updates on Dynamic Island
- Background Refresh: Automatic updates even when the app is closed
- Push Notifications: Alerts for charging completion, software updates, and TPMS warnings
- Quick Actions: 3D Touch shortcuts for instant access to key features
- Localization: Available in English and Spanish. Want T-Buddy in your language? Open an issue with your request!
To use T-Buddy, you need:
-
TeslaMate Instance (v1.28.0 or later)
- A self-hosted TeslaMate installation logging your Tesla vehicle data
- TeslaMate GitHub Repository
- TeslaMate Documentation
-
TeslaMate API (v2.0.0 or later)
- A REST API layer for TeslaMate to expose data to mobile apps
- TeslaMate API GitHub Repository
- Required for T-Buddy to communicate with your TeslaMate database
-
Network Access
- Your iPhone must be able to reach your TeslaMate API server
- Options include:
- Same local network (easiest for home WiFi)
- VPN connection (e.g., WireGuard, Tailscale) for remote access
- Public exposure with proper authentication (not recommended without security measures)
- iOS 26.0 or later
- iPhone (optimized for all screen sizes from iPhone SE to iPhone 16 Pro Max)
- Internet connection (WiFi or Cellular to reach your TeslaMate API)
Your TeslaMate API must be configured with:
- Base URL: The URL where your TeslaMate API is accessible (e.g.,
https://teslamateapi.yourdomain.com) - Authentication: Bearer token or Basic Auth (strongly recommended)
- TLS/SSL: HTTPS enabled for secure communication (port 8883 default)
Note: T-Buddy does NOT work with Tesla's official API directly. It requires TeslaMate to be logging your vehicle data first.
T-Buddy is currently in beta testing. To try the app:
-
Join the TestFlight Beta:
- Click here to join TestFlight Beta
- Or scan this QR code with your iPhone Camera:
-
Install TestFlight (if you don't have it):
- Download TestFlight from the App Store
-
Install T-Buddy:
- Open the TestFlight invitation link on your iPhone
- Tap "Accept" and then "Install"
-
Ensure TeslaMate is running:
# Check TeslaMate is accessible curl http://your-teslamate-host:4000 -
Verify TeslaMate API is running:
# Check TeslaMate API health curl http://your-teslamateapi-host:8080/api/v1/cars -
Open T-Buddy and follow the onboarding flow
-
Configure your connection:
- Go to Settings → API Configuration
- Enter your API details
- Test the connection
-
Start monitoring! Your dashboard will populate with real-time vehicle data
After installing the app:
- Launch T-Buddy on your iPhone
- Complete onboarding:
- Confirm you have TeslaMate installed and running
- Confirm you have TeslaMate API installed and accessible
- Configure API Connection:
- Enter your TeslaMate API base URL (e.g.,
https://api.teslamate.home:8443) - Choose authentication method (Token recommended)
- Enter your API token or username/password
- Tap "Test Connection" to verify
- Enter your TeslaMate API base URL (e.g.,
- Grant Permissions (optional but recommended):
- Notifications: For charge completion, software updates, and TPMS alerts
- Background App Refresh: For automatic data updates
If T-Buddy cannot connect to your TeslaMate API:
- Check network connectivity: Ensure your iPhone can reach the API URL (try opening it in Safari)
- Verify API is running: Check TeslaMate API logs for errors
- Check authentication: Ensure your token or credentials are correct
- Check SSL certificate: If using self-signed certificates, you may need to disable SSL verification (not recommended for production)
- Check firewall rules: Ensure port 8080 (or your custom port) is open
- Try local IP first: Test with your server's local IP address (e.g.,
http://192.168.1.100:8080) before using domain names
Still having trouble? Open an issue with details about your setup.
Found a bug or experiencing unexpected behavior? Please help us improve T-Buddy:
- Check existing issues: See if someone has already reported it in Issues
- Open a new issue: Create a new issue with:
- Clear title: Brief description of the problem
- Steps to reproduce: How to trigger the bug
- Expected behavior: What should happen
- Actual behavior: What actually happens
- Environment:
- T-Buddy version (visible in Settings → About)
- iOS version
- iPhone model
- TeslaMate version
- TeslaMate API version
- Screenshots/Logs: If applicable (remove any sensitive data!)
Have an idea to make T-Buddy better?
- Check existing requests: See if it's already suggested in Issues
- Open a feature request: Create a new issue with:
- Clear description: What feature you'd like to see
- Use case: Why this feature would be valuable
- Mockups/Examples: Visual examples if applicable
- Discussions: General questions, ideas, and community chat → Discussions (if enabled)
- Updates: Follow releases and changelogs → Releases
Note: This is an independent community project. Response times may vary as this is maintained by volunteers.
T-Buddy takes your privacy seriously:
- No data collection: T-Buddy does not collect, store, or transmit any of your data to third-party services
- No analytics: Zero telemetry or crash reporting to external servers
- Local storage: All data is cached locally on your device using SwiftData
- Self-hosted infrastructure: Your TeslaMate data stays on your own infrastructure
- Secure credentials: Passwords and tokens are stored in iOS Keychain, never in plain text
- Open development: Development practices documented in this public repository (code not included)
T-Buddy requests the following permissions:
- Network Access: To communicate with your TeslaMate API (required)
- Background App Refresh: To update data automatically in the background (optional)
- Notifications: To alert you about charge completion, updates, and warnings (optional)
All permissions are opt-in and explained during setup.
T-Buddy would not be possible without these amazing open-source projects:
- TeslaMate - The incredible self-hosted Tesla data logger by Adrian Kumpf and contributors
- TeslaMate API - REST API layer for TeslaMate by Tobias Ehlert
- SwiftUI - Apple's modern UI framework
Special thanks to:
- The TeslaMate community for building such a robust logging platform
- All beta testers providing valuable feedback
- Tesla owners who share the passion for data and EVs
T-Buddy is proprietary software. The source code is not publicly available.
This repository is for community engagement only:
- Report bugs and issues
- Request features
- Discuss ideas
- Receive updates and announcements
Copyright © 2025 Giovanny Aranda. All rights reserved.
Planned features for future releases:
- Apple Watch companion app
- iPad optimization with multi-column layouts
- Shortcuts integration for Siri commands
- CarPlay support for in-vehicle access (Or maybe not...)
- Charge cost calculator and trends
- Export data (CSV, JSON)
- Advanced filtering and search
- More widget styles and sizes
Have suggestions? Let us know!
- Issues & Bugs: GitHub Issues
- Feature Requests: GitHub Issues
Made with ❤️ for the Tesla and TeslaMate community
⭐ Star this repo to show your support!













