{"id":13394384,"url":"https://github.com/infinitered/reactotron","last_synced_at":"2026-04-06T20:01:07.839Z","repository":{"id":38311209,"uuid":"56352157","full_name":"infinitered/reactotron","owner":"infinitered","description":"A desktop app for inspecting your React JS and React Native projects. macOS, Linux, and Windows.","archived":false,"fork":false,"pushed_at":"2026-04-06T17:59:42.000Z","size":59771,"stargazers_count":15539,"open_issues_count":152,"forks_count":968,"subscribers_count":155,"default_branch":"master","last_synced_at":"2026-04-06T19:19:35.361Z","etag":null,"topics":["debugging","desktop","react-native","reactjs","reactnative","reactotron","redux","redux-saga"],"latest_commit_sha":null,"homepage":"https://docs.infinite.red/reactotron/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/infinitered.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2016-04-15T21:58:32.000Z","updated_at":"2026-04-06T17:59:45.000Z","dependencies_parsed_at":"2023-12-20T01:18:19.881Z","dependency_job_id":"0b26b4ff-bcc7-4d5f-a3a2-f8dc22987564","html_url":"https://github.com/infinitered/reactotron","commit_stats":{"total_commits":5915,"total_committers":145,"mean_commits":"40.793103448275865","dds":0.356043956043956,"last_synced_commit":"bb59b3201bd6b497ce8e21a827c031b79b734022"},"previous_names":["skellock/reactotron","reactotron/reactotron"],"tags_count":726,"template":false,"template_full_name":null,"purl":"pkg:github/infinitered/reactotron","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinitered%2Freactotron","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinitered%2Freactotron/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinitered%2Freactotron/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinitered%2Freactotron/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/infinitered","download_url":"https://codeload.github.com/infinitered/reactotron/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinitered%2Freactotron/sbom","scorecard":{"id":487972,"data":{"date":"2025-08-11","repo":{"name":"github.com/infinitered/reactotron","commit":"578c6d2335816829ba50086ac04e6706f7b42048"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.6,"checks":[{"name":"Maintained","score":3,"reason":"4 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":4,"reason":"Found 13/30 approved changesets -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/cleanup-all-temp-trusted-branches.yml:1","Warn: no topLevel permission defined: .github/workflows/trust-fork-pr-cleanup.yml:1","Warn: no topLevel permission defined: .github/workflows/trust-fork-pr.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/cleanup-all-temp-trusted-branches.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/infinitered/reactotron/cleanup-all-temp-trusted-branches.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/trust-fork-pr-cleanup.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/infinitered/reactotron/trust-fork-pr-cleanup.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/trust-fork-pr.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/infinitered/reactotron/trust-fork-pr.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/trust-fork-pr.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/infinitered/reactotron/trust-fork-pr.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/trust-fork-pr.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/infinitered/reactotron/trust-fork-pr.yml/master?enable=pin","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":2,"reason":"SAST tool is not run on all commits -- score normalized to 2","details":["Warn: 4 commits out of 15 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"83 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-jxhc-q857-3j6g","Warn: Project is vulnerable to: GHSA-q58g-455p-8vw9","Warn: Project is vulnerable to: GHSA-jphg-qwrw-7w9g","Warn: Project is vulnerable to: GHSA-r7j3-vvh2-xrpj","Warn: Project is vulnerable to: GHSA-5m2v-hc64-56h6","Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-h5c3-5r3r-rr8q","Warn: Project is vulnerable to: GHSA-rmvr-2pp2-xj38","Warn: Project is vulnerable to: GHSA-xx4v-prfh-6cgc","Warn: Project is vulnerable to: GHSA-whgm-jr23-g3j9","Warn: Project is vulnerable to: GHSA-r4pf-3v7r-hh55","Warn: Project is vulnerable to: GHSA-8hc4-vh64-cxmj","Warn: Project is vulnerable to: GHSA-jr5f-v2jv-69x6","Warn: Project is vulnerable to: GHSA-qwcr-r2fm-qrc7","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-w8qv-6jwh-64r5","Warn: Project is vulnerable to: GHSA-pxg6-pf52-xh8x","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-phwq-j96m-2c2q","Warn: Project is vulnerable to: GHSA-ghr5-ch3p-vcr6","Warn: Project is vulnerable to: GHSA-6r2x-8pq8-9489","Warn: Project is vulnerable to: GHSA-9jxc-qjr9-vjxq","Warn: Project is vulnerable to: GHSA-434g-2637-qmqr","Warn: Project is vulnerable to: GHSA-49q7-c7j4-3p7m","Warn: Project is vulnerable to: GHSA-977x-g7h5-7qgw","Warn: Project is vulnerable to: GHSA-f7q4-pwc6-w24p","Warn: Project is vulnerable to: GHSA-fc9h-whq2-v747","Warn: Project is vulnerable to: GHSA-vjh7-7g9h-fjfh","Warn: Project is vulnerable to: GHSA-rv95-896h-c2vc","Warn: Project is vulnerable to: GHSA-qw6h-vgh9-j6wx","Warn: Project is vulnerable to: GHSA-3q56-9cc2-46j4","Warn: Project is vulnerable to: GHSA-mpg4-rc92-vx8v","Warn: Project is vulnerable to: GHSA-cxjh-pqwp-8mfp","Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-vfrc-7r7c-w9mx","Warn: Project is vulnerable to: GHSA-7wwv-vh3v-89cq","Warn: Project is vulnerable to: GHSA-c7qv-q95q-8v27","Warn: Project is vulnerable to: GHSA-m5qc-5hw7-8vg7","Warn: Project is vulnerable to: GHSA-33f9-j839-rf8h","Warn: Project is vulnerable to: GHSA-c36v-fmgq-m8hx","Warn: Project is vulnerable to: GHSA-78xj-cgh5-2h22","Warn: Project is vulnerable to: GHSA-2p57-rm9w-gvfp","Warn: Project is vulnerable to: GHSA-76p3-8jx3-jpfq","Warn: Project is vulnerable to: GHSA-3rfm-jhwj-7488","Warn: Project is vulnerable to: GHSA-hhq3-ff78-jv3g","Warn: Project is vulnerable to: GHSA-4wx3-54gh-9fr9","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3","Warn: Project is vulnerable to: GHSA-mwcw-c2x4-8c55","Warn: Project is vulnerable to: GHSA-5rrq-pxf6-6jx5","Warn: Project is vulnerable to: GHSA-8fr3-hfg3-gpgp","Warn: Project is vulnerable to: GHSA-gf8q-jrpm-jvxq","Warn: Project is vulnerable to: GHSA-2r2c-g63r-vccr","Warn: Project is vulnerable to: GHSA-cfm4-qjh2-4765","Warn: Project is vulnerable to: GHSA-x4jg-mjrx-434g","Warn: Project is vulnerable to: GHSA-rp65-9cf3-cjxr","Warn: Project is vulnerable to: GHSA-76c9-3jph-rj3q","Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j","Warn: Project is vulnerable to: GHSA-rhx6-c78j-4q9w","Warn: Project is vulnerable to: GHSA-h7cp-r72f-jxh6","Warn: Project is vulnerable to: GHSA-v62p-rq8g-8h59","Warn: Project is vulnerable to: GHSA-7fh5-64p2-3v2j","Warn: Project is vulnerable to: GHSA-wvhm-4hhf-97x9","Warn: Project is vulnerable to: GHSA-h4hr-7fg3-h35w","Warn: Project is vulnerable to: GHSA-gj77-59wh-66hg","Warn: Project is vulnerable to: GHSA-hqhp-5p83-hx96","Warn: Project is vulnerable to: GHSA-3949-f494-cm99","Warn: Project is vulnerable to: GHSA-x7hr-w5r2-h6wg","Warn: Project is vulnerable to: GHSA-5q6m-3h65-w53x","Warn: Project is vulnerable to: GHSA-p8p7-x288-28g6","Warn: Project is vulnerable to: GHSA-gcx4-mw62-g8wm","Warn: Project is vulnerable to: GHSA-m6fv-jmcg-4jfg","Warn: Project is vulnerable to: GHSA-cm22-4g7w-348p","Warn: Project is vulnerable to: GHSA-g4rg-993r-mgx7","Warn: Project is vulnerable to: GHSA-w5hq-hm5m-4548","Warn: Project is vulnerable to: GHSA-f5x3-32g6-xq36","Warn: Project is vulnerable to: GHSA-52f5-9888-hmc6","Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3","Warn: Project is vulnerable to: GHSA-wr3j-pwj9-hqq6","Warn: Project is vulnerable to: GHSA-4v9v-hfq4-rm2v","Warn: Project is vulnerable to: GHSA-9jgg-88mc-972h","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-19T18:17:26.861Z","repository_id":38311209,"created_at":"2025-08-19T18:17:26.861Z","updated_at":"2025-08-19T18:17:26.861Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31487542,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-06T17:22:55.647Z","status":"ssl_error","status_checked_at":"2026-04-06T17:22:54.741Z","response_time":112,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["debugging","desktop","react-native","reactjs","reactnative","reactotron","redux","redux-saga"],"created_at":"2024-07-30T17:01:17.736Z","updated_at":"2026-04-06T20:01:07.833Z","avatar_url":"https://github.com/infinitered.png","language":"TypeScript","readme":"# ![Reactotron Logo](./docs/plugins/images/readme/Reactotron-128.png)\n\n[Join our Community Slack](http://community.infinite.red/)\n\n## Introduction\n\nReactotron is a powerful debugger for React and React Native applications. It provides an easy-to-use interface for developers to monitor their application's **state, network requests, and performance metrics** and can be used for any size of project, from small personal apps to large-scale enterprise applications. The OG debugger at [Infinite Red](https://infinite.red) that we use on a day-to-day basis to build client apps. Additionally, Reactotron is completely open source and free to use, making it an invaluable tool for developers at all levels of experience.\n\nWe recommend that you watch [Darin Wilson's](https://github.com/darinwilson) talk at [Chain React](https://chainreactconf.com/): [Chain React 2018: Debugging and Beyond with Reactotron](https://www.youtube.com/watch?v=UiPo9A9k7xc)!\n\n## Reactotron Superpowers\n\nUse Reactotron to:\n\n- view your application state\n- show API requests \u0026 responses\n- perform quick performance benchmarks\n- subscribe to parts of your application state\n- display messages similar to `console.log`\n- track global errors with source-mapped stack traces including saga stack traces!\n- dispatch actions like a government-run mind control experiment\n- hot swap your app's state using Redux or mobx-state-tree\n- show image overlay in React Native\n- track your Async Storage in React Native\n\nYou plug it into your app as a dev dependency so it adds nothing to your production builds.\n\n### Desktop\n\nReactotron on the left, demo React Native app on the right.\n\n![Desktop](./docs/plugins/images/readme/reactotron-demo-app.gif)\n\n## Installation\n\nOn the [Releases](https://github.com/infinitered/reactotron/releases?q=reactotron-app\u0026expanded=true) page, navigate to the latest `reactotron-app` release to find the newest version of:\n\n- macOS (x64 \u0026 arm64)\n- Linux (32-bit \u0026 64-bit)\n- Windows (32-bit \u0026 64-bit)\n\n## How to setup Reactotron in our app\n\n- [**React Native**](https://docs.infinite.red/reactotron/quick-start/react-native/)\n- [**React**](https://docs.infinite.red/reactotron/quick-start/react-js/)\n\n## How to use Reactotron's features/plugins\n\n- [**Track Global Errors**](https://docs.infinite.red/reactotron/plugins/track-global-errors/)\n- [**Track Global Logs**](https://docs.infinite.red/reactotron/plugins/track-global-logs/)\n- [**Networking**](https://docs.infinite.red/reactotron/plugins/networking/)\n- [**Async Storage**](https://docs.infinite.red/reactotron/plugins/async-storage/)\n- [**React Native MMKV**](https://docs.infinite.red/reactotron/plugins/react-native-mmkv/)\n- [**Benchmark**](https://docs.infinite.red/reactotron/plugins/benchmark/)\n- [**apisauce**](https://docs.infinite.red/reactotron/plugins/apisauce/)\n- [**Overlay**](https://docs.infinite.red/reactotron/plugins/overlay/)\n- [**MST**](https://docs.infinite.red/reactotron/plugins/mst/)\n- [**Redux**](https://docs.infinite.red/reactotron/plugins/redux/)\n- [**Open in Editor**](https://docs.infinite.red/reactotron/plugins/open-in-editor/)\n- [**Storybook (only for React Native)**](https://docs.infinite.red/reactotron/plugins/storybook/) \\\n   `reactotron-react-native` ships with [Storybook](https://storybook.js.org/).\n  This enables you to switch to Storybook from the Reactotron app.\n- [**Custom Commands**](https://docs.infinite.red/reactotron/custom-commands/)\n\n## Tips and Tricks\n\n[Some tips that will elevate your Reactotron experience.](https://docs.infinite.red/reactotron/tips/)\n\n## Bug Reports\n\nWhen reporting problems with Reactotron, use the provided example app located in `app/example-app` to replicate the issue. This approach enables us to isolate and expedite the resolution of the problem.\n\n## Want to contribute? Here are some helpful reading materials\n\n- [**Contributing**](https://docs.infinite.red/reactotron/contributing/)\n- [**Architecture**](https://docs.infinite.red/reactotron/contributing/architecture/)\n- [**Monorepo**](https://docs.infinite.red/reactotron/contributing/monorepo/)\n- [**Release**](https://docs.infinite.red/reactotron/contributing/releasing/)\n\n## Troubleshooting\n\n- [**React Native iOS**](https://docs.infinite.red/reactotron/troubleshooting/#react-native-ios)\n- [**React Native Android**](https://docs.infinite.red/reactotron/troubleshooting/#react-native-android)\n\n## Credits\n\nReactotron is developed by [Infinite Red](https://infinite.red), [@rmevans9](https://github.com/rmevans9), and 70+ amazing contributors! Special thanks to [@skellock](https://github.com/skellock) for originally creating Reactotron while at Infinite Red.\n\n## Premium Support\n\n[Reactotron](https://infinite.red/reactotron), as an open source project, is free to use and always will be. [Infinite Red](https://infinite.red/) offers premium React and [React Native](https://infinite.red/react-native) mobile app design/development services. Email us at [hello@infinite.red](mailto:hello@infinite.red) to get in touch for more details.\n","funding_links":[],"categories":["JavaScript","TypeScript","Tools and Utilities","React Native","Applications","前端开发框架及项目","TOOL","Developer Tools","Debugging"],"sub_categories":["Tools","Other","Downloader","其他_文本生成、文本对话","📦 Other (22)","Graphics \u0026 Drawing"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfinitered%2Freactotron","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finfinitered%2Freactotron","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfinitered%2Freactotron/lists"}