How it works
Two independent halves: an app that tracks and sends and a server that collects and shows. You can use just one of them.
The app
You press start and the app begins taking fixes, at the cadence you set. Each fix goes where you decided: a web address, a text message, or both on different schedules.
The cadence is hybrid: a time interval plus a minimum distance, so a parked phone does not waste battery. It also tightens as you near the destination, where metres matter more.
Pick a destination on the map with an arrival radius and sharing closes itself when you enter it. Nothing to remember at the end of the journey.
You write the address
This is what makes the app different. There is no imposed format: you write the address with placeholders and the app fills them in before sending.
https://esempio.tld/raccolta.php?lat={lat}&lon={lon}&t={tempo}&bat={bat}
There are around twenty placeholders: coordinates, time, accuracy, altitude, speed, heading, satellites, battery, network, pressure, distance covered and left. The parameters can travel in the address, as a form, or as JSON.
With no server at all you can use text messages alone. The message text is written the same way, with placeholders: put an OpenStreetMap link in it and whoever receives it opens it in a browser and sees where you are.
{evento} https://www.openstreetmap.org/?mlat={lat}&mlon={lon}#map=16/{lat}/{lon}
In the app this text is one tap away: a button fills it in ready-made.
Setting it up
The settings are grouped into sections that open on demand. The two that matter stay open: how to transmit and where.
- Under How to transmit, pick the channels: endpoint, text messages, or both.
- Under Endpoint you paste the address with the placeholders and pick the method. A test button sends a fake position straight away and shows the server's reply.
- Under SMS you add the recipients and the message text. Below each text you get the character count and how many messages it will take.
- Under Cadence you decide how often to take a fix and under Journey the default arrival radius.
- Diagnostics tells you what is missing: permissions, GPS, notifications. Red rows stop sharing from working, amber ones only make it sturdier.






The server
It collects positions into JSON files, one per journey and draws them on a map: the track coloured by speed, tappable waypoints with all the data, an elevation profile and a summary.
There is also the list of past journeys, browsable by day or month, behind a password. Each journey has its own code: a link you share opens that journey and no other.
It needs PHP 8 and a writable folder. No database, no framework, no keys to apply for.
Sending the data elsewhere
The server is optional. Since the customizable address, the app talks to anything that takes an HTTP request: Traccar, Home Assistant, Node-RED, n8n and webhooks in general.