v1.1.0
MifKit 1.1.0
First release under the new MifKit name. The Excel exporter you knew as MifMapXL is unchanged — it is now one of several converters in a pluggable registry, with a UI and CLI that adapt to whichever direction you pick.
Old
MifMapXL.gitURLs auto-redirect; settings from 1.0.x are migrated automatically on first launch.
What's new
KML/KMZ → MapInfo MIF/MID (kml-to-mif)
A full second conversion direction. Resolves each Placemark's styleUrl through StyleMap → Style chains so per-feature colors land in MapInfo as matching Pen / Brush / Symbol strings. Four attribute columns: Name, Description, resolved StyleId, full KML Folder path (so you can Select * where Folder like "%бугры%" once everything is in one table). Folder hierarchy preserved as nested directories on disk, or flattened into one directory with parent__child prefixes (--flat). KMZ archives unzipped in-process — no external tools needed. Charset: WindowsCyrillic (cp1251, default) for Russian/Kazakh data, or Neutral (UTF-8) for MapInfo Pro 15.2+.
Verified byte-identical to a reference Python implementation on a real 1854-feature dataset.
mifkit CLI
The desktop installers also drop a mifkit binary on PATH. Same engine, same options, terminal-first workflow:
mifkit list # all registered converters
mifkit help kml-to-mif # show one converter's options
mifkit convert kml-to-mif input.kmz --output=./out --flat
mifkit convert mif-to-xlsx ./mif-folder --output=./out --no-paint-rowsOutput paths go to stdout (one per line), logs go to stderr — pipe mifkit convert ... | xargs ... without parsing logs. Exit 0 on success, 1 on per-file errors, 2 on usage errors.
Schema-driven GUI
The renderer no longer hard-codes anything converter-specific. It reads the registry on startup and builds the dropdown + options form from each converter's declarative schema. Adding a new format = one folder under src/core/converters/ + one fixture + one registry entry; the app picks it up automatically with no UI changes.
Settings v2
Per-converter option storage: each direction remembers its own last values across launches. Legacy flat keys from 1.0.x users (paintRows, skipBlack, etc.) are migrated into converterOptions['mif-to-xlsx'] on first load. No setup needed.
Existing features still work as before
The MapInfo → Excel/CSV exporter (mif-to-xlsx) is unchanged: row painting from Brush foreground color, skip-black, combined workbook mode, CSV side-export, color column with custom name, freeze header, autofilter. The existing integration tests confirm byte-identical output to 1.0.4.
Downloads
| Platform | File |
|---|---|
| Windows — installer | MifKit-win-x64-setup.exe |
| Windows — portable | MifKit-win-x64-portable.exe |
| macOS — Apple Silicon | MifKit-mac-arm64.dmg (or zip) |
| Linux — Debian/Ubuntu | MifKit-linux-amd64.deb |
| Linux — AppImage | MifKit-linux-x86_64.AppImage |
First-run notes
macOS — unsigned. If you see "MifKit.app is damaged":
xattr -dr com.apple.quarantine /Applications/MifKit.appWindows — SmartScreen may show "Windows protected your PC". Click More info → Run anyway.
Test suite
102 passing tests (registry, converters, CLI, settings migration). npm test ≈ 0.5s.
What's next (planned)
mif-to-kml · mif-to-geojson · geojson-to-mif · shp-to-mif · mif-to-shp — see the table in README.md.