iKML is the studio’s thirty-third project, and like RMQA it checks a file before it goes somewhere it’s hard to take back. Map files move between Google Earth, My Maps, drone apps and GIS programs, and each import quietly drops or bends something: styles, timestamps, folders, a point typed in backwards. iKML opens a KML, KMZ or GeoJSON file, shows what’s inside and names each problem with a code and the placemark and line where it sits. The launch post shows it on real export layouts.
0.1.0 inspects and checks files, reports what a conversion to the other format will lose before you convert, converts between all three, and writes cleaned copies with open polygon rings closed and swapped coordinates put back when you ask. The same Go engine runs in the browser through WebAssembly, so the inspector on ikml.com reads a file without uploading it. Use cases cover swapped latitude and longitude, a DJI drone mission, a My Maps export, KMZ files that point at pictures on someone’s own disk, field boundaries, GPS tracks and private site plans.
The testing uses 31 files written by hand in the layouts real programs produce, 22 of them broken on purpose and all 22 caught. 3,000 random files went KML to GeoJSON and back with every position intact, and four fuzz targets took over three million mangled inputs without a crash. Two problems turned up before 0.1.0 went out: a file handed to the browser version in one particular way could stop it, and a DJI mission’s route file was reported as unused when the drone needs it. An independent review of 0.1.0 found that a KMZ could carry files named to unpack outside their folder and pass as clean; 0.1.1, out the same day, makes that an error and keeps such files out of anything iKML writes, and 0.1.2 closes two gaps a second review found in that fix.
Open source under Apache 2.0, for Linux, macOS and Windows, from the latest release.