{"categories":[{"label":"Build Tools","url":"https://skillfed.io/packages/category/software-development-build-tools/5"},{"label":"Hardware","url":"https://skillfed.io/packages/category/system-hardware"},{"label":"Embedded Systems","url":"https://skillfed.io/packages/category/software-development-embedded-systems"}],"enrichment":{"capability":"Analyzes binary size and memory footprint of embedded firmware by extracting symbol-level details from ELF files and linker scripts, with support for multiple architectures and source file mapping.","skillfed_tags":["embedded-systems","firmware-analysis","memory-profiling"],"use_cases":["Track firmware binary size and memory region utilization in CI/CD pipelines using GitHub Actions for automated PR analysis.","Generate human-readable or JSON memory reports locally to identify which symbols and sections consume the most space.","Monitor memory growth over time by uploading analysis reports to MemBrowse for historical comparison and budget alerting.","Debug memory layout issues by mapping symbols to their source files and examining section-level deltas across builds.","Validate that firmware stays within real memory limits even when building with inflated linker scripts for overflow tracking."],"what_it_does":"MemBrowse is a command-line tool and Python library for analyzing memory consumption in embedded firmware. It reads ELF binaries and linker scripts to extract detailed memory layout information\u2014regions, sections, and individual symbols\u2014and maps each symbol back to its source file. The tool supports multiple architectures that produce DWARF-format ELF files and can work standalone for local analysis or integrate with the MemBrowse cloud service for historical tracking, diffs, and CI/CD gating.\n\nThe package is designed for embedded developers who need to track firmware size growth, understand memory region utilization (FLASH, RAM, etc.), and identify which symbols consume the most space. It integrates with GitHub Actions for automated PR analysis and includes Jinja2 templating for customizable memory reports. The tool can also handle overflow scenarios by comparing against inflated linker scripts while reporting against real memory limits.","worth_installing":"Yes, with a license caveat. The package is actively maintained, has low install friction, and solves a real problem for embedded firmware developers\u2014memory profiling and tracking. However, verify the actual license before use, as the metadata does not specify one. If you work on embedded systems and need to monitor or optimize firmware size, this is a practical tool worth adopting."},"id":"membrowse","links":{"html":"https://skillfed.io/packages/membrowse","md":"https://skillfed.io/packages/membrowse.md","pypi":"https://pypi.org/project/membrowse/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-25","license_spdx":null,"license_treatment":"unclear","name":"membrowse","python_support":"supports_current","summary":"Memory footprint analysis tools for embedded firmware"},"popularity":{"monthly_downloads":108610,"position":12551,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.2.9"}
