Show HN: Teslamate data beautiful and usable on mobile
After getting a Tesla last year, I did what many data-oriented folks do: I immediately set up Teslamate on a Raspberry Pi. For those unfamiliar, Teslamate is a fantastic open-source, self-hosted data logger for Tesla vehicles. It uses an Elixir backend to pull data from the Tesla API and stores everything in a PostgreSQL database, with Grafana for visualization.
While I loved having access to every detail of my car's data, I quickly ran into a few persistent frustrations:
1. The Interface: Grafana is incredibly powerful on a desktop but almost unusable on a phone. Trying to check stats on the go meant pinching, zooming, and fighting with tiny text and complex dashboards not designed for a mobile viewport.
2. Remote Access: I wanted to access my dashboard securely when away from home. My first attempt involved setting up Nginx as a reverse proxy with LetsEncrypt for SSL. It worked, but it meant another container to manage, expiring certs to worry about, and exposing a port. I later moved to Tailscale, which was much better, but still required some manual configuration to integrate cleanly with the Docker stack.
3. Cost Tracking: Teslamate's default cost calculation is a single flat rate. My electricity plan has different peak and off-peak rates, and I also charge at work and at Superchargers. To keep my cost data accurate, I found myself SSH'ing into my Pi and manually updating rows in the `charging_processes` table in PostgreSQL, which was a real chore.
I looked for a simple, mobile-first frontend for Teslamate but couldn't find one. So, I decided to build it myself.
Today I'm sharing the result: https://mytesla.cc
To be perfectly clear, this is not a replacement for Teslamate. It's a responsive web app that serves as a clean, mobile-friendly frontend for your existing Teslamate instance.
Here’s how it addresses the problems:
It’s a simple, responsive UI that provides a quick overview of your stats without the complexity of Grafana on mobile.
It introduces a straightforward way to manage charging costs, allowing you to define rates based on location and time-of-use schedules. The costs are then calculated and applied automatically.
To simplify secure access, the setup includes an optional, pre-configured Tailscale integration directly in the `docker-compose.yml` file, making it much easier to get a secure, end-to-end encrypted connection running without opening any ports. You can, of course, still use your own reverse proxy or Cloudflare Tunnel if you prefer.
On Security and Data Privacy:This is critical. My service never sees your car data. The project consists of two parts: the web app itself (a static PWA hosted at mytesla.cc) and a new Docker container you add to your Teslamate stack.
When you open the web app in your browser, it communicates directly with your self-hosted Teslamate instance over the secure channel you control (e.g., your local network or Tailscale). My server's only role is to serve the static web app to licensed users; it does not proxy, see, or store any of your personal or vehicle data.
This has been a solo-developer side project for the past few months. To make it sustainable and support future development, I'm making it available for a one-time purchase of $9.90. If it doesn't work for you, there's a 7-day refund policy.
I'd love to hear your thoughts and get your feedback.
No comments yet