LintLokalization
Multi-threaded localization key validator for iOS/macOS/Android with IDE-native diagnostics
Overview
LintLokalization is a multi-threaded command-line tool written in Swift that validates localization keys across iOS/macOS/Android projects. It scans source files using configurable regex patterns to find localization key usages, cross-references them against localization files (.strings or Android XML), and reports missing or unknown keys. It integrates directly into Xcode build phases, GitHub Actions, and Android Studio via format-specific reporters that emit diagnostics in each tool's native format.
Highlights
- Multi-threaded CLI tool with manual thread pool, semaphore synchronization, and zero-contention work partitioning
- Production-deployed at Povio Labs as an Xcode build phase and CI step catching real localization bugs before shipping
- Cross-platform reporter system (Xcode, GitHub Actions, Android Studio, terminal) using a clean strategy pattern
- Performance-instrumented design with built-in benchmarking, per-phase timing, and throughput metrics (files/s, lines/s)
- Hand-rolled .strings parser with proper escape handling and single-pass processing
Related Projects
ArgPar
Annotation-driven CLI argument parsing library for Java using reflection
Designed a declarative annotation-driven CLI parsing library (~548 lines) that eliminates all imperative parsing boilerplate
Swift Code Generators
AST-based code generation tools that parse Swift source files and emit test/view boilerplate
Applied compiler theory to developer tooling: parse Swift source into ASTs and emit type-correct test boilerplate as a compiler phase problem