πŸŽ… Santa Sleigh Tracker – Complete Setup Guide

Create your own live Santa Sleigh tracker for your Round Table or community group.
This guide uses Firebase Realtime Database, the GPS Logger app and GitHub Pages, so families can watch Santa move live across your town.

1️⃣ Create a Firebase Project

  1. Go to https://console.firebase.google.com
  2. Click Add project.
  3. Name it something like santa-sleigh-tracker-yourtown.
  4. Disable Google Analytics when asked.
  5. Click Create project and wait for Firebase to finish.

2️⃣ Add a Realtime Database

  1. In the left-hand menu, go to Build β†’ Realtime Database.
  2. Click Create Database.
  3. Select region europe-west1 (Belgium) (the example HTML assumes this region).
  4. Choose Start in test mode for now (we’ll lock writes in the rules).

Your database URL will look like:

https://YOUR-PROJECT-ID-default-rtdb.europe-west1.firebasedatabase.app/

You’ll use this base URL in the tracker HTML and in the GPS Logger app.

3️⃣ Create the Sleigh Data Structure

In the Realtime Database data view:

  1. At the root /, click the + button.
  2. Create a node called location.
  3. Inside location, create a child called current.
  4. Inside current, create a child with a secret key name β€” any random string, e.g. abc123xyz789.
  5. Inside that secret key node, add the following three fields:
location
 └── current
      └── YOUR_SECRET_KEY
           β”œβ”€β”€ lat: 66.5436
           β”œβ”€β”€ lng: 25.8473
           └── ts: "2025-11-01T00:00:00Z"
  

βœ… The tracker HTML reads location/current.json and then takes the first child (your secret key). So this exact structure is required.

4️⃣ Lock Down the Database Rules

Open the Rules tab and replace everything with:

{
  "rules": {
    ".read": true,

    "location": {
      "current": {
        ".write": false,

        "$secret": {
          ".write": "$secret === 'YOUR_SECRET_KEY'"
        }
      }
    }
  }
}
  

Now click Publish.

πŸ” This means:
β€’ Anyone can read the sleigh’s location (needed for the public map). β€’ Only a client writing to /location/current/YOUR_SECRET_KEY can update it. β€’ All other write paths under location/current are blocked.

5️⃣ Configure the GPS Logger App

Install GPS Logger on the device that will be on the sleigh.

βš™ 5.1 Enable logging to custom URL

  1. Open the app.
  2. Go to Settings β†’ Logging details β†’ Log to custom URL.
  3. Enable:
    • βœ… Log to custom URL
    • βœ… Validate SSL certificate
    • Optional: βœ… Discard offline locations

βš™ 5.2 Enter your Firebase write URL

In the URL field, enter:

https://YOUR-PROJECT-ID-default-rtdb.europe-west1.firebasedatabase.app/location/current/YOUR_SECRET_KEY.json

Example:

https://santa-sleigh-tracker-4dccd-default-rtdb.europe-west1.firebasedatabase.app/location/current/abcdefg12345.json

βœ… Use the same YOUR_SECRET_KEY you created in step 3. βœ… Do not quote it. ❌ Don’t send to /location/current.json – that would break permissions.

βš™ 5.3 Method, headers & body

JSON body:

{
  "lat": %LAT,
  "lng": %LON,
  "ts": "%TIME"
}
  

GPS Logger substitutes: β€’ %LAT β†’ latitude β€’ %LON β†’ longitude β€’ %TIME β†’ timestamp in ISO format

βš™ Recommended settings

Once you hit Start Logging, you should see live updates under: location β†’ current β†’ YOUR_SECRET_KEY in Firebase. The lat, lng and ts values will keep changing.

6️⃣ Create Your Tracker HTML on GitHub

  1. Create an account at https://github.com if you don’t have one.
  2. Create a new public repository, e.g. SantaSleighTracker.
  3. Click Add file β†’ Create new file.
  4. Name it something like: santa_sleigh_tracker_final.html.

Now open one of Ben’s templates and copy the entire file:

Paste the HTML into your new GitHub file.

✏️ Only change one line in that file: the firebaseURL (or similar) variable. Set it to your own Firebase base URL, for example:

const firebaseURL = "https://YOUR-PROJECT-ID-default-rtdb.europe-west1.firebasedatabase.app";

πŸ”’ Do not put your YOUR_SECRET_KEY inside this HTML file – it only ever lives in Firebase rules + the GPS logger app.

7️⃣ Publish via GitHub Pages

  1. In your repo, go to Settings β†’ Pages.
  2. Under Build and deployment:
    • Source: Deploy from a branch
    • Branch: main / root
  3. Click Save.

After a minute or two, your tracker will be live at a URL like:

https://YOUR-GITHUB-NAME.github.io/SantaSleighTracker/santa_sleigh_tracker_final.html

🌍 That URL is your public live map – we’ll embed it next.

8️⃣ Embed the Tracker on Your Website / Carrd

Paste this snippet wherever your site allows custom HTML (Carrd, WordPress, Squarespace, etc.):

<!-- πŸŽ… Santa Sleigh Tracker Embed -->
<div style="width:90vw;max-width:1000px;margin:0 auto;padding:0 8px;">
  <iframe
    src="https://YOUR-GITHUB-NAME.github.io/SantaSleighTracker/santa_sleigh_tracker_final.html"
    style="
      width:100%;
      height:80vh;
      min-height:480px;
      border:none;
      border-radius:15px;
      box-shadow:0 4px 18px #0002;
      display:block;
      margin:0 auto;
      overflow:hidden;
    "
    allowfullscreen
    loading="lazy"
  ></iframe>
</div>
  

βœ… Replace the src value with your own GitHub Pages URL. The iframe is fully responsive and looks good on mobile and desktop.

9️⃣ Optional – Custom Santa Marker Icon

To use a custom marker on the map:

  1. Upload your PNG to https://imgbb.com.
  2. Copy the direct image URL.
  3. In your tracker HTML, find the Leaflet marker config line that looks like:
iconUrl: "https://i.ibb.co/0jP05w6J/Santa-Marker.png",

Replace the URL with your own.

Generic Santa roundel marker you can use:

https://i.ibb.co/Z1BzZS2T/Santa-Marker-7.png

🎨 Canva template if you want to customise your own icon: Santa marker Canva design

πŸ”Ÿ You’re Ready to Roll!

If the map doesn’t move, check:
β€’ GPS Logger URL exactly matches your Firebase path (including .json).
β€’ Rules include your YOUR_SECRET_KEY and are published.
β€’ firebaseURL in your HTML uses the correct project ID + region.