kstenerud/kscrash

The Ultimate iOS Crash Reporter

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 1 hour ago
Added to GitGenius on September 15th, 2026
Created on June 17th, 2012
Open Issues & Pull Requests: 25 (+0)
GitHub issues: Enabled
Number of forks: 742
Total Stargazers: 4,494 (+0)
Total Subscribers: 131 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 27.5 days
Mean response time: 739.8 days
90th percentile: 3015.2 days
Tracked items: 207

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 17
New in 7 days: 11
Closed in 7 days: 2
Avg open age: 14 days
Stale 30+ days: 6
Stale 90+ days: 0

Recent activity

Opened in 7 days: 11
Closed in 7 days: 1
Comments in 7 days: 2
Events in 7 days: 3

Top labels

  • bug (19)
  • enhancement (14)
  • 3.0.0 (13)
  • installation (5)
  • iOS 27 (2)
  • question (2)
  • Xcode 27 (1)
  • async-signal-safety (1)

Detailed Description

KSCrash is a crash reporting framework for Apple platforms that captures and stores detailed crash reports on iOS, macOS, tvOS, watchOS, and visionOS.

The tool addresses the need to detect and diagnose application crashes across multiple failure modes. It intercepts Mach exceptions, signals, C++ and Objective-C exceptions, main thread hangs lasting 250 milliseconds or longer, and OS-level terminations including out-of-memory conditions, thermal shutdowns, CPU throttling, and device reboots. It generates crash reports in Apple's standard format with all fields populated, storing them on disk for later retrieval or transmission to a server.

Developers building iOS or macOS applications should adopt this tool if they need comprehensive crash diagnostics beyond what basic exception handling provides. It suits projects ranging from small apps to large systems where understanding failure modes across different termination types is critical. The framework integrates via Swift Package Manager or CocoaPods and requires minimal setup—crashes are captured automatically once installed. Notable capabilities include a watchdog monitor for detecting main thread hangs with full backtraces, detection of OS-level terminations by comparing state across app launches, CPU usage monitoring with sliding-window averages that mirror Apple's enforcement thresholds, and a persistent key-value store for custom user data that survives crashes without overhead at crash time. The tool also includes a sampling profiler, zombie detection for messages to deallocated objects, memory pressure monitoring, and automatic crash cause diagnosis.

The project maintains an active develop branch for next-release work and provides migration guides for upgrading from earlier versions. Pull requests are directed to the develop branch, indicating ongoing development activity with structured release planning.