Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mindat Nearby

A Tauri 2.0 iOS app for exploring mineral localities anywhere on Earth using the Mindat database, powered by mindat-rs 0.2.

Features

  • True radius search, worldwide — center the map anywhere and find localities within a real distance using Mindat's geoloc-point endpoint (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, or Wulfenite to narrow results.
  • Interactive Leaflet map with a results list, GPS centering, and km/mi units.

Requirements

  • macOS with Xcode installed
  • Rust toolchain with iOS targets
  • Mindat API key (get one at mindat.org)
  • Apple Developer account (for iOS builds)

Setup

1. Install dependencies

# Install Rust iOS targets
rustup target add aarch64-apple-ios aarch64-apple-ios-sim

# Install JS dependencies
pnpm install

2. Configure Apple Development Team

Set 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.

3. Run on iOS Simulator

cargo tauri ios dev

4. Enter API Key

On first launch, enter your Mindat API key. It's stored in-app and used for all Mindat requests.

How search works

  1. geoloc-point returns the IDs of every locality within the chosen radius of the map center.
  2. Those IDs are resolved in batches via /localities/ (with optional name/element filters applied server-side), then sorted nearest-first by great-circle distance.
  3. Tapping a result loads that locality's minerals from /occurrences/, resolving species names and properties from /geomaterials/.

Tech notes

  • mindat-rs 0.2 (Mindat API v1) — geospatial, localities, occurrences, geomaterials.
  • Tauri 2.11, tauri-plugin-geolocation, tauri-plugin-opener.
  • Map tiles: OpenStreetMap via Leaflet.

About

An iOS app for accessing the Mindat.org API

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages