This is an experiment in replacing redux entirely with a tiny library I wrote for global application state management. Redux has been okay, but all of the redux actions in speedscope are setters, which always made me think there must be a simpler way. This is an attempt to find that simpler way. See `src/lib/atom.ts` for the library.
852 B
852 B
Speedscope TypeScript source
This directory contains the bulk of speedscope's source code.
Subdirectories
gl/: WebGL code. This includes e.g. the code to render flamecharts.import/: Code to import profiles from varous profilers into speedscope. This include e.g. the code to import Chrome performance profiles.lib/: Mostly dependency-less utilities. This includes e.g. an LRU cache implementation, basic linear algebra classes, and the definition of speedscope's file format.app-state/: Speedscope's application state managementtypings/: TypeScript definition filesviews/: View code to generate the HTML & CSS used to construct the UI. Implemented usingpreactandaphrodite.