A Tauri 2.0 iOS app for exploring mineral localities anywhere on Earth using the
Mindat database, powered by mindat-rs 0.2.
- True radius search, worldwide — center the map anywhere and find localities
within a real distance using Mindat's
geoloc-pointendpoint (no more USA-only bounding-box approximation). Results come back nearest-first with distances. - Tap a locality to see its minerals — a detail sheet lists the species found there with formula, hardness, and colour, pulled from occurrence + geomaterial data.
- Mineral reference — look up any species for a full data sheet: formula, Mohs hardness, colour, streak, lustre, crystal system, and industrial uses.
- Filter by name or element — type
Quartz,Cu, orWulfeniteto narrow results. - Interactive Leaflet map with a results list, GPS centering, and km/mi units.
- macOS with Xcode installed
- Rust toolchain with iOS targets
- Mindat API key (get one at mindat.org)
- Apple Developer account (for iOS builds)
# Install Rust iOS targets
rustup target add aarch64-apple-ios aarch64-apple-ios-sim
# Install JS dependencies
pnpm installSet your Apple Developer Team ID via environment variable:
export APPLE_DEVELOPMENT_TEAM="YOUR_TEAM_ID"Or configure it in Xcode after running cargo tauri ios init.
cargo tauri ios devOn first launch, enter your Mindat API key. It's stored in-app and used for all Mindat requests.
geoloc-pointreturns the IDs of every locality within the chosen radius of the map center.- Those IDs are resolved in batches via
/localities/(with optional name/element filters applied server-side), then sorted nearest-first by great-circle distance. - Tapping a result loads that locality's minerals from
/occurrences/, resolving species names and properties from/geomaterials/.
mindat-rs0.2 (Mindat API v1) — geospatial, localities, occurrences, geomaterials.- Tauri 2.11,
tauri-plugin-geolocation,tauri-plugin-opener. - Map tiles: OpenStreetMap via Leaflet.