Skip to main content

geotrace-sdk

Python bindings for the GeoTrace SDK: read and write .gtd GNSS/GPS navigation data files.

.gtd is the open binary recording format used by GeoTrace, a desktop application for visualizing GPS/GNSS navigation data: position traces on a map, satellite signal quality, event markers, and filtering.

MIT licensed. Requires Python 3.12+.

Install

uv add geotrace-sdk

Or

pip install geotrace-sdk

Distributed as abi3 wheels (one cp312-abi3 wheel per platform, forward-compatible with newer CPython) for Linux (manylinux and musllinux), macOS, and Windows. A platform without a matching wheel builds from the source distribution, which requires a Rust toolchain.

Write a track

from datetime import datetime, timezone
from geotrace_sdk import NavFileBuilder, NavFix

builder = NavFileBuilder()
builder.add(NavFix(
    lat=51.5074,
    lon=-0.1278,
    gps_time=datetime(2024, 1, 15, 9, 0, 0, tzinfo=timezone.utc),
    heading=90.0,
))
builder.finish().write_to_file("track.gtd")

add() also accepts satellite reports, map annotations, and event markers.

Read a file

from geotrace_sdk import NavFile

nav_file = NavFile.open("track.gtd")
print(len(nav_file.points), "points,", len(nav_file.markers), "markers")
for point in nav_file.points:
    print(point.lat, point.lon, point.gps_time)

Logging

The SDK does not raise when it drops or substitutes data. It drops a satellite report that has no timestamp, and it keeps an unknown travel_mode as it read it. In both cases the call succeeds and the SDK writes a logging record saying what it did.

Each record goes to a logger named after the module that wrote it, such as geotrace_sdk.builder. All of them sit under geotrace_sdk, so a single handler there receives every one.

import logging

logging.basicConfig()
logging.getLogger("geotrace_sdk").setLevel(logging.DEBUG)

Examples

Runnable examples are in sdk/python/geotrace-py/examples:

Full list and per-platform notes: docs/sdk/python.md.

Metadata

Release files for geotrace-sdk 0.6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for geotrace-sdk 0.6.0
File Size Uploaded
geotrace_sdk-0.6.0.tar.gz 164.1 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for geotrace-sdk 0.6.0
File
geotrace_sdk-0.6.0-cp312-abi3-win_arm64.whl CPython 3.12 abi3 Windows ARM64 Details
geotrace_sdk-0.6.0-cp312-abi3-win_amd64.whl CPython 3.12 abi3 Windows x86-64 Details
geotrace_sdk-0.6.0-cp312-abi3-win32.whl CPython 3.12 abi3 Windows x86-32 Details
geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_x86_64.whl CPython 3.12 abi3 Linux musl 1.2+ x86-64 Details
geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_i686.whl CPython 3.12 abi3 Linux musl 1.2+ x86-32 Details
geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_armv7l.whl CPython 3.12 abi3 Linux musl 1.2+ ARMv7l Details
geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_aarch64.whl CPython 3.12 abi3 Linux musl 1.2+ ARM64 Details
geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 abi3 Linux glibc 2.17+ x86-64 Details
geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.12 abi3 Linux glibc 2.17+ IBM System/390x Details
geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.12 abi3 Linux glibc 2.17+ PowerPC 64-le Details
geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.12 abi3 Linux glibc 2.17+ ARMv7l Details
geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 abi3 Linux glibc 2.17+ ARM64 Details
geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.12 abi3 Linux glibc 2.5+ x86-32 Details
geotrace_sdk-0.6.0-cp312-abi3-macosx_11_0_arm64.whl CPython 3.12 abi3 macOS 11.0+ ARM64 Details
geotrace_sdk-0.6.0-cp312-abi3-macosx_10_12_x86_64.whl CPython 3.12 abi3 macOS 10.12+ x86-64 Details

Total release size: 14.5 MB

Release files / geotrace_sdk-0.6.0.tar.gz

Download URL geotrace_sdk-0.6.0.tar.gz
Size 164.1 kB
Tags Source
SHA-256 checksum
How to use checksums
cc9db6757eeef4503e11554b34b8178132557079621a6f8e920d727a92b15b4d
BLAKE2b-256 checksum
How to use checksums
251228d5b558a1e6cb70950ab69720f4a36d4be009cc5dd9edce0806d8d83c92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-win_arm64.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-win_arm64.whl
Size 811.4 kB
Tags CPython 3.12 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
6a8dc3c6e0fb559c991207e9b28c0d9a8f3469d150b13fbf0333fe0c6abb54d7
BLAKE2b-256 checksum
How to use checksums
c8544e0db47cac65e7cca54493871eb4c3c8152c36e83a2b35a17c383522c731
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-win_amd64.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-win_amd64.whl
Size 858.8 kB
Tags CPython 3.12 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
6e81234fb84a52a4ea244c393580e9fc3954c864e364bd19abf75859777fb31e
BLAKE2b-256 checksum
How to use checksums
fd8c6c5aa62dbd8e17843a8504bce156186194c1f6f93c1b54ac754390a1813d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-win32.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-win32.whl
Size 832.0 kB
Tags CPython 3.12 Windows x86-32 abi3
SHA-256 checksum
How to use checksums
02cb90671d4429591b3a52d85b04e8164b7a28fe927812588f34874185cc9faf
BLAKE2b-256 checksum
How to use checksums
ba0b5aa4bd859c2f69ffe0c0d0f81659c0c56450fb5ba543294bf9528e9dfeb8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_x86_64.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_x86_64.whl
Size 1.1 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
04286d305ac47c5b4f90f9acc97b2a99517651f2006366910f36f760d93c93d5
BLAKE2b-256 checksum
How to use checksums
ab52679324feafa2323cb63e3bdfdceea5af98973e767afc902c150733b1693c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_i686.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_i686.whl
Size 1.2 MB
Tags CPython 3.12 Linux musl 1.2+ x86-32 abi3
SHA-256 checksum
How to use checksums
412da1c576b2b281a2923bb3033db96be8847c3768f21ea2146f468e7ef1459b
BLAKE2b-256 checksum
How to use checksums
c63875daa80a946004905c4857464e994c1071b9f26b3a3da5d037b55cf45960
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_armv7l.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_armv7l.whl
Size 1.2 MB
Tags CPython 3.12 Linux musl 1.2+ ARMv7l abi3
SHA-256 checksum
How to use checksums
ee1f79a6e4a2f3158de808073545208c5ae1f83c545e51e0e766f3258351a3bb
BLAKE2b-256 checksum
How to use checksums
4541e0c50b9604e8a70b822d832d7d2733e874fdf43707d36327f6fed29e628f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_aarch64.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-musllinux_1_2_aarch64.whl
Size 1.0 MB
Tags CPython 3.12 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
07b50a51ca23a96eb72c4c0ddeeea3af86542c345c02fafb982077eea1d6ca09
BLAKE2b-256 checksum
How to use checksums
035219881743c0abcfd63cbe4c4b1a4b552c24b8cf5c17dfc670a77b5a0bc211
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 904.2 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
4f8b674b0c4d349e3e8b9ce3649ea25e0284b5b1e614b86e59eaa6cb93d22249
BLAKE2b-256 checksum
How to use checksums
64798dfe00d1f5bc8697d70ade0f3ddbb5224bae79f318da226878bcac46063d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 991.6 kB
Tags CPython 3.12 Linux glibc 2.17+ IBM System/390x abi3
SHA-256 checksum
How to use checksums
0d2316ed7fc3d75983659d58c4354b9a17b6e3abaa5966b3e333b355b5cf3b57
BLAKE2b-256 checksum
How to use checksums
9fb733c2e7c1db23ec409797e63dbdfe0892cc257292f93ab0793d221d8a8a43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 997.1 kB
Tags CPython 3.12 Linux glibc 2.17+ PowerPC 64-le abi3
SHA-256 checksum
How to use checksums
27691c6bc17ded4b6a77c86a09779402ab3b5a50e34a741b62048f731c6deabb
BLAKE2b-256 checksum
How to use checksums
3dbdcf9a62becc38edb13e6766943aca87afee8c8a248dc61428fd08c48c6c17
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 910.3 kB
Tags CPython 3.12 Linux glibc 2.17+ ARMv7l abi3
SHA-256 checksum
How to use checksums
f0321b6f7eb690512b6ff39a3d7500f0715a0398fdc7613610d19a6e14e8fc62
BLAKE2b-256 checksum
How to use checksums
fd2b3ee8adc1f3dd01337eb9d826fddf448c3dcd47955392714eb8956c1bc39b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 847.0 kB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
9ee913a5a7f5f6a1a25d3d9fbc6cb1043faceb04c3d6ffeafb1d484ef27cd201
BLAKE2b-256 checksum
How to use checksums
8f93ea0324b9d06670ef6a1d224624d7515c56aa4f950376c5cd90a705aa957b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_5_i686.manylinux1_i686.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Size 1.0 MB
Tags CPython 3.12 Linux glibc 2.5+ x86-32 abi3
SHA-256 checksum
How to use checksums
1732eba45eaeac136ca290da9e097cc9e1c6f54930309f3c85417e2ce20f87a1
BLAKE2b-256 checksum
How to use checksums
668aa5b84a06d1fd37ff25b5d45ca1143c4daffd9f5853c8009241c19a67983e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-macosx_11_0_arm64.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-macosx_11_0_arm64.whl
Size 824.5 kB
Tags CPython 3.12 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3e50b97dc1be41408b6b2cc02aba13b344106d2e5dd7694ee950fb2a3c10981d
BLAKE2b-256 checksum
How to use checksums
a42f75b7a3bf572df4db6abfef84a74d2418a592617517149633eead4012a766
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release files / geotrace_sdk-0.6.0-cp312-abi3-macosx_10_12_x86_64.whl

Download URL geotrace_sdk-0.6.0-cp312-abi3-macosx_10_12_x86_64.whl
Size 878.5 kB
Tags CPython 3.12 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
9545aaee30fc28b2e7eefb1b84fe55d50f1a5ea95cdf4ac6eca6cbebfe227089
BLAKE2b-256 checksum
How to use checksums
806f425d62fbd774849071e00657a6bad9ccd8c22af2ee686155cccd056fb06f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.

Transparency log

Release history Release notifications | RSS feed

0.7.0

16 release files

This release

0.6.0 This release

16 release files

0.5.0

16 release files

0.3.0

16 release files

0.2.0

16 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page