Track GPS location with PWA?

I’m needing the tracking function of a users device; if I use the PWA normally I can but I need to see if this is natively supported in Softr.

Hey, we currently do not have such a function in our app :slightly_frowning_face: Instead, if you can build it in any other app and embed it, then you can use the embedded codes in our Custom Code block.

Hi and welcome to the community!

Here’s some custom code that will get the user’s current geolocation and display it in a JavaScript alert popup, assuming they answer “yes” to the permission prompt. I tested it on Mac/Chrome and iOS/Safari. The code is shamelessly cribbed from this answer on Stack Overflow.

if ( navigator.permissions && navigator.permissions.query) {
  //try permissions APIs first
  navigator.permissions.query({ name: 'geolocation' }).then(function(result) {
      // Will return ['granted', 'prompt', 'denied']
      const permission = result.state;
      if ( permission === 'granted' || permission === 'prompt' ) {
} else if (navigator.geolocation) {
  //then Navigation APIs

function _onGetCurrentLocation () {
    const options = {
            enableHighAccuracy: true,
            timeout: 5000,
            maximumAge: 0
    navigator.geolocation.getCurrentPosition( function (position) {
        //use coordinates
        const marker = { 
          lat: position.coords.latitude, 
          lng: position.coords.longitude 
        alert(`Lat: ${} lng: ${marker.lng}`);
    }, function (error) {
      //error handler here
    }, options)

Just out of curiosity, when you were imagining this feature being natively supported in Softr, how were you picturing it would work?


Thanks for sharing this custom code with us @dcoletta :slight_smile:

1 Like

Thank you! By chance, do you have a step by step in softr?

I imagine that there would be the following fields and fif you would like I would be happy to do a Figma mockup?

-User Restrictions
-ask which field and status triggers this
-asks if the trigger is based on a field or if on a button click
-asks which field stops the tracking and what status does this
-This would pass back a url to track in other apps

We need to be able to track users’ GPS coordinates, as our use case is a transportation app with drivers. If we have their location, it would be a very powerful feature for us. However, actively asking them for their location wouldn’t work, we are trying to find a native-like solution where the user grant location permission so we can track it all the time in the background

@dcoletta thanks for the script. I think it is useful, just one question, How can coordinates pass to an Airtable base to have organized the info?. I think that it could be nice to get notes related with places… as it can be done in Google Keep

If I were going to try to do that, I would revise the script so that it can auto-populate an input field of a form that the user can then submit.