46 Repos
Tools for inspecting and traversing active execution frames.
Distinguishing note: Focuses on navigation and frame inspection.
Explore 46 awesome GitHub repositories matching development tools & productivity · Call Stack Navigators. Refine with filters or upvote what's useful.
Arthas is a Java diagnostic tool and runtime debugger designed for real-time troubleshooting of applications. It functions as a remote diagnostics agent that allows users to inspect the runtime state of a Java process, including its heap objects and classloader hierarchies, without requiring a process restart. The project distinguishes itself through advanced bytecode manipulation capabilities, enabling live class hotswapping and the modification of bytecode in running processes. It supports in-memory source compilation and runtime bytecode decompilation to verify and update logic instantly w
Retrieves full stack traces of specific method invocations to identify calling functions and execution paths.
This project is a comprehensive reference guide and technical documentation for the features, syntax updates, and APIs introduced in ECMAScript 6. It serves as a language specification and overview for modern JavaScript development. The guide covers a wide range of language enhancements, including the implementation of classes and prototype-based inheritance, the use of arrow functions for lexical scope binding, and the introduction of block-scoped variables. It details the module system for organizing independent code components via import and export statements. The documentation extends to
Explains the optimization of recursive call stacks to prevent overflow.
YouCompleteMe is a completion engine and semantic code analyzer for the Vim editor. It provides an integrated suite of development tools, including a Language Server Protocol client and a semantic analyzer that utilizes Clang to offer context-aware symbols and type-based highlighting. The project distinguishes itself through specialized semantic completion for C-family languages and JavaScript, offering identifiers, snippets, and automatic imports. It provides advanced visual feedback such as inlay hints for type information and parameter names, as well as semantic highlighting based on the a
Enables exploration of the call hierarchy to navigate relationships between callers and callees of specific symbols.
Logrus is a structured logging library for Go that produces machine-readable output using key-value pairs and JSON formatting. It serves as a pluggable logging framework providing a thread-safe event logger with configurable mutex locking to manage concurrent writes across multiple goroutines. The project distinguishes itself through a pluggable hook system that routes log entries to external services or custom destinations. It also features a contextual logger capable of attaching persistent metadata and request-scoped fields to entries to improve traceability. The framework covers broad ob
Inspects the execution stack at runtime to capture the filename and line number of the calling function.
Delve is a command-line debugger designed for programs written in the Go programming language. It provides an interactive interface for runtime analysis, allowing developers to control program execution, inspect memory and variable states, and navigate call stacks to identify logic errors. The tool distinguishes itself through deep integration with the Go runtime, specifically by providing goroutine-aware stack unwinding and the ability to manage concurrent execution threads. It utilizes a client-server protocol to decouple the debugger engine from the user interface, enabling both local and
Provides tools to trace execution paths by listing active frames and moving between stack levels.
FlameGraph is a performance profiling and visualization toolkit designed to identify bottlenecks in software execution. It functions as a processing engine that transforms raw stack trace samples into interactive, hierarchical diagrams. By representing aggregated execution frequency as nested rectangles, the tool allows developers to visualize hot code paths and analyze system behavior across both kernel and user-space environments. The project distinguishes itself through its ability to perform differential profile analysis, which highlights performance regressions or improvements by compari
Provides interactive zooming capabilities to isolate and inspect specific branches within hierarchical call stack visualizations.
TinyGo is a specialized compiler and development toolkit designed to bring the Go programming language to resource-constrained microcontrollers and WebAssembly environments. It provides a bare-metal runtime environment that enables high-level code execution without the need for a traditional operating system, utilizing an LLVM-based backend to generate efficient machine instructions. The project distinguishes itself through aggressive optimization techniques tailored for small hardware, including a static memory allocation strategy and whole-program dead code elimination that significantly re
Displays function call sequences to trace program flow during runtime debugging.
PySnooper is a diagnostic library for Python that tracks variable values and execution flow to provide a detailed history of program state. By applying decorators to functions, generators, or classes, it logs line-by-line execution and state changes without requiring manual print statements. The tool distinguishes itself through its ability to monitor nested function calls and concurrent operations in multi-threaded applications. It captures execution context by accessing the current stack frame, allowing for the inspection of local variables and the evaluation of arbitrary expressions during
Monitors nested function invocations by propagating tracing state through the call stack.
This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu
Provides guidance on capturing and interpreting runtime call stacks to diagnose program crashes.
System Informer is a diagnostic utility designed for the monitoring and management of Windows system components. It provides comprehensive visibility into process execution, system services, and hardware resource utilization, allowing users to track real-time performance metrics and analyze active system activity. The software distinguishes itself through deep integration with the operating system, utilizing kernel-mode driver interfacing to access low-level data and perform administrative actions. It features a plugin-based architecture that allows for the integration of external modules to
Reconstructs execution paths by traversing call stacks across native and managed code boundaries.
q is a JavaScript promise library and asynchronous flow controller designed to manage non-blocking operations. It serves as a system for coordinating parallel tasks and sequencing asynchronous workflows through task chaining and error propagation. The library distinguishes itself with specialized debugging tools that capture long stack traces across asynchronous jumps and monitor unhandled rejections to prevent silent failures. It also functions as a remote object proxy, forwarding method calls to remote targets and routing responses back through promises. The project provides comprehensive
Rewrites error stacks to trace asynchronous jumps and preserve the call site across event loop turns.
Pinpoint is a distributed application performance monitoring and tracing system. It functions as an application performance monitor and topology visualizer designed to analyze the execution behavior of large-scale distributed applications. The system uses bytecode instrumentation to monitor applications without requiring changes to the original source code. It captures call stacks and request flows across interconnected services to visualize system dependencies and generate real-time architectural maps of communication patterns. The platform covers a broad range of observability capabilities
Captures runtime call stacks and transaction flows across services to analyze execution paths.
pwndbg is a GDB plugin and binary analysis framework designed for reverse engineering, exploit development, and low-level program analysis. It extends the core functionality of the debugger to provide advanced memory inspection and automation tools. The project distinguishes itself with specialized capabilities for heap analysis across glibc, jemalloc, and musl, as well as a comprehensive kernel debugging toolkit for inspecting Linux kernel tasks and slab allocators. It includes an integrated ROP gadget searcher for constructing exploit chains and an LLM-powered debugging assistant that provi
Enables navigation through active execution frames to trace program flow back to the caller.
Ginkgo is a behavior-driven development testing framework, assertion library, and test runner for Go. It provides a domain-specific language for writing human-readable specifications, organizing tests into hierarchical containers and subjects to describe system behavior. The project distinguishes itself through advanced execution control and observability, featuring a test runner capable of parallel distribution, sharding, and randomized execution order to detect flaky tests. It includes specialized diagnostic tools for goroutine leak detection, hanging spec monitoring, and failure state debu
Maps failed assertions in helper functions back to the original call site to simplify debugging.
gperftools is a collection of specialized tools for profiling CPU usage, detecting memory errors, and providing high-performance memory allocation. It provides a memory profiling toolkit for C++ applications, including a sampling CPU profiler and a heap profiler for analyzing consumption patterns. The project includes a high-performance memory allocator designed as a multi-threaded replacement for standard allocation to reduce contention and improve execution speed. It further provides a memory debugger to identify illegal memory access and double frees. The toolkit covers broad diagnostic c
Captures active execution frames to map memory allocations and performance hotspots to specific source code locations.
snacks.nvim is a comprehensive collection of quality-of-life plugins and utilities designed to extend the core functionality of Neovim. It serves as a multi-purpose toolkit providing a UI framework, navigation enhancements, and integrations with external services. The project distinguishes itself by combining a wide array of specialized tools into a single suite, including a picker-based file explorer, a deep GitHub integration for managing issues and pull requests, and a set of development utilities for profiling Lua performance and inspecting code execution. Its broader capability surface
Generates a formatted notification showing the stack trace of the current execution point.
VizTracer is a Python runtime instrumentation system and execution profiler used to trace and visualize code execution. It functions as a multi-process performance analyzer and trace visualizer, providing an interactive timeline and flamegraph interface to identify performance bottlenecks and analyze call sequences. The project distinguishes itself by its ability to aggregate execution data from multiple threads, subprocesses, and asynchronous tasks into a single unified report. It also features live process instrumentation, allowing users to attach to and detach from running Python applicati
Logs function arguments, return values, and variable attributes dynamically without requiring modifications to the source code.
pyinstrument is a statistical sampling profiler for Python that records the call stack at regular intervals to identify performance bottlenecks with low overhead. It tracks wall-clock time, including I/O and external service calls, and provides specialized profiling for asynchronous programs by attributing time spent awaiting tasks to the calling function. The project converts captured execution data into interactive HTML reports, JSON, and flamecharts. It includes a call stack visualizer to simplify the analysis of execution paths and supports the profiling of individual cells within interac
Captures the runtime call stack to identify the source of execution delays.
glog is a C++ logging framework designed for recording application events and system diagnostics. It provides a stream-based interface for capturing debugging information and managing system event persistence. The library includes a stack trace logger that captures execution call stacks and resolves memory addresses into readable function names. It also features a dedicated error handling module to manage system shutdown and reporting during fatal failures. Log lifecycle management is handled through automatic rotation and deletion of old files to prevent disk space exhaustion. The framework
Captures active execution frames and resolves raw memory addresses into human-readable function names.
Dieses Projekt ist ein strukturiertes Logging-Framework und eine Bibliothek für Node.js-Anwendungen. Es erstellt maschinenlesbare Log-Datensätze im JSON-Format mit gestuften Schweregraden, um eine konsistente Analyse und zentralisierte Speicherung sicherzustellen. Das System enthält einen Log-Stream-Manager für das Routing von Datensätzen an mehrere Ziele, wie Dateien und Konsolen, sowie ein Command-Line-Interface für das Filtern, Formatieren und Visualisieren roher JSON-Log-Streams. Es unterstützt die Erstellung von Child-Loggern, die übergeordnete Konfigurationen erben und zusätzliche kontextuelle Metadaten zusammenführen. Das Framework deckt ein breites Spektrum operativer Funktionen ab, einschließlich zeitbasierter Dateirotation für das Festplattenmanagement, In-Memory-Ringpuffer für die nachträgliche Wiederherstellung und die Bereitstellung interner Logging-Ereignisse als DTrace-Probes für die Laufzeitbeobachtung in Echtzeit. Es bietet zudem dynamische Call-Site-Introspektion, um Quellort-Metadaten an Logs anzuhängen.
Extracts filename and line number from the execution stack to provide source location metadata.