https://github.com/chagui/ninjavis
Generates visualization from Ninja build logs.
https://github.com/chagui/ninjavis
ninja profile python python3 visualization
Last synced: about 1 year ago
JSON representation
Generates visualization from Ninja build logs.
- Host: GitHub
- URL: https://github.com/chagui/ninjavis
- Owner: chagui
- License: mit
- Created: 2019-01-27T15:17:41.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2025-01-02T10:36:05.000Z (over 1 year ago)
- Last Synced: 2025-04-09T21:14:27.854Z (about 1 year ago)
- Topics: ninja, profile, python, python3, visualization
- Language: Python
- Homepage:
- Size: 200 KB
- Stars: 48
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ninjavis #
[](https://travis-ci.org/chagui/ninjavis)
[](https://pypi.python.org/pypi/ninjavis)
[](https://pythonwheels.com/)
[](https://pypi.python.org/pypi/ninjavis)
## Introduction ##
Generate visualization from [Ninja](https://github.com/ninja-build/ninja) build logs. Ninjavis parse the ninja build
logs and for each item of the build extract its target, starting and end time.
It output those information in a template containing a simple timeline ; the visualization is done by [vis.js](http://visjs.org/).
Inspired by [buildbloat](https://github.com/nico/buildbloat).
## Usage ##
```bash
usage: ninjavis --title "my build" ninja_build.log build_profile.html
```
:warning: Run ``ninja -t recompact`` first to make sure that no duplicate entries are in the build log.
## Example ##
Profile of Ninja 1.8.2 build

Output HAR?
https://en.wikipedia.org/wiki/HAR_(file_format)
https://github.com/firefox-devtools/profiler
https://github.com/nico/ninjatracing
https://www.speedscope.app/
https://ui.perfetto.dev/
https://github.com/google/pybadges