This PR introduces a React-based API Testing Tool that allows users to build, send, and test HTTP requests directly within ReactPlay.#1651
Conversation
✅ Deploy Preview for reactplayio ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
There was a problem hiding this comment.
Hey! contributor, thank you for opening a Pull Request 🎉.
@reactplay/maintainers will review your submission soon and give you helpful feedback.
If you're interested in continuing your contributions to open source and want to be a part of a welcoming and fantastic community, we invite you to join our ReactPlay Discord Community.
Show your support by starring ⭐ this repository. Thank you and we appreciate your contribution to open source!
Stale Marking : After 30 days of inactivity this issue/PR will be marked as stale issue/PR and it will be closed and locked in 7 days if no further activity occurs.
priyankarpal
left a comment
There was a problem hiding this comment.
The Netlify deploy errored, with the following guidance provided:
Diagnosis
- The build runs to completion, but Netlify’s secrets scanner halts the deploy because it detects values that look like secrets in the repository or generated build output at the end of the log (#L1340-L1350). This forces the build to exit with code 2, causing the failure.
Solution
- Identify the flagged secrets. Review recent commits and the generated
build/artifacts to find hard-coded API keys, tokens, or other secrets. Remove them from source files and ensure any bundling step isn’t inlining them. - Store genuine secrets as Netlify environment variables (Site settings → Environment variables) or in another secure secrets manager, then reference them in code via
process.env.*(orimport.meta.env.*for Vite) rather than hard-coding the values. - If the values are false positives, double-check that they are indeed safe to expose. If they are intended to be public, you can opt into Netlify’s smart detection overrides (
SECRETS_SCAN_SMART_DETECTION_OMIT_VALUESor disable withSECRETS_SCAN_SMART_DETECTION_ENABLED=false), but do so only after confirming no real secrets are committed. - Commit the changes removing or relocating the secrets and rerun the build; deployment should proceed once the scanner no longer finds sensitive values.
The relevant error logs are:
Line 0: build-image version: 78d0fcff90a66ed4048cfb3252450561538f796a (noble-new-builds)
Line 1: buildbot version: cbb330566fbc2c88d277ceda93fc833ecdc87883
Line 2: Fetching cached dependencies
Line 3: Failed to fetch cache, continuing with build
Line 4: Starting to prepare the repo for build
Line 5: No cached dependencies found. Cloning fresh repo
Line 6: git clone --filter=blob:none https://github.com/reactplay/react-play
Line 7: Preparing Git Reference pull/1651/head
Line 8: Custom build command detected. Proceeding with the specified command: 'npm run build'
Line 9: Starting to install dependencies
Line 10: mise �[36m~/.config/mise/config.toml�[0m tools: �[34mpython�[0m@3.14.2
Line 11: mise �[36m~/.config/mise/config.toml�[0m tools: �[34mruby�[0m@3.4.8
Line 12: mise �[36m~/.config/mise/config.toml�[0m tools: �[34mgo�[0m@1.25.6
Line 13: v18.20.8 is already installed.
Line 35: Progress: resolved 170, reused 0, downloaded 156, added 0
Line 36: Progress: resolved 310, reused 0, downloaded 296, added 0
Line 37: Progress: resolved 336, reused 0, downloaded 318, added 0
Line 38: Progress: resolved 402, reused 0, downloaded 375, added 0
Line 39: Progress: resolved 588, reused 0, downloaded 529, added 0
Line 40: Progress: resolved 713, reused 0, downloaded 654, added 0
Line 41: Progress: resolved 813, reused 0, downloaded 745, added 0
Line 42: Progress: resolved 1114, reused 0, downloaded 1017, added 0
Line 43: Progress: resolved 1382, reused 0, downloaded 1266, added 0
Line 44: Progress: resolved 1659, reused 0, downloaded 1521, added 0
Line 45: WARN 33 deprecated subdependencies found: @babel/plugin-proposal-class-properties@7.18.6, @babel/plugin-proposal-nullish-coale
Line 46: Packages: +1755
Line 47: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Line 48: Progress: resolved 1790, reused 0, downloaded 1736, added 0
Line 49: Progress: resolved 1790, reused 0, downloaded 1758, added 995
Line 50: Progress: resolved 1790, reused 0, downloaded 1758, added 1755, done
Line 51: > react-play@1.0.0 prepare /opt/build/repo
Line 52: > husky install
Line 53: husky - Git hooks installed
Line 54: WARN Issues with peer dependencies found
Line 55: .
Line 102: + mathjs 11.12.0 (15.1.0 is available)
Line 103: + p5 1.11.11 (2.2.0 is available)
Line 104: + react 18.3.1 (19.2.4 is available)
Line 105: + react-chatbot-kit 2.2.2
Line 106: + react-codemirror2 7.3.0 (9.0.1 is available)
Line 107: + react-color 2.19.3
Line 108: + react-confetti 6.4.0
Line 109: + react-countdown 2.3.6
Line 110: + react-dom 18.3.1 (19.2.4 is available)
Line 111: + react-dropzone 14.4.0
Line 112: + react-error-boundary 3.1.4 (6.1.0 is available)
Line 113: + react-helmet 6.1.0
Line 114: + react-hot-toast 2.6.0
Line 115: + react-icons 4.12.0 (5.5.0 is available)
Line 116: + react-infinite-scroll-component 6.1.1
Line 117: + react-infinite-scroll-hook 4.1.1 (6.0.1 is available)
Line 118: + react-infinite-scroller 1.2.6
Line 119: + react-leaflet 4.2.1 (5.0.0 is available)
Line 120: + react-loader-spinner 5.1.5 (8.0.2 is available)
Line 121: + react-organizational-chart 2.2.1
Line 122: + react-p5 1.4.1 deprecated
Line 979: WARNING : Thursday, Feb 5, 2026: WARNING : Play not found locally : Task-Manager(taskmanager)
Line 980: INFO : Thursday, Feb 5, 2026: INFO : Checking play locally: ManageTask(managetask)
Line 981: WARNING : Thursday, Feb 5, 2026: WARNING : Play not found locally : ManageTask(managetask)
Line 982: INFO : Thursday, Feb 5, 2026: INFO : Checking play locally: 25(25)
Line 983: WARNING : Thursday, Feb 5, 2026: WARNING : Play not found locally : 25(25)
Line 984: INFO : Thursday, Feb 5, 2026: INFO : Checking play locally: Soham Bhattacharya(soham-bhattacharya)
Line 985: WARNING : Thursday, Feb 5, 2026: WARNING : Play not found locally : Soham Bhattacharya(soham-bhattacharya)
Line 986: Creating an optimized production build...
Line 987: �[33mCompiled with warnings.�[39m
Line 988: �[33m�[39m
Line 989: Failed to parse source map from '/opt/build/repo/node_modules/.pnpm/@tensorflow-models+coco-ssd@2.2.3_@tensorflow+tfjs-converter
Line 990: [eslint]
Line 991: src/common/playleaderboard/TopPlayCreators.jsx
Line 992: �[1mLine 17:27:�[22m 'rank' is defined but never used �[33m�[4m@typescript-eslint/no-unused-vars�[24m�[39m
Line 993: src/common/playlists/PlayCard.jsx
Line 994: �[1mLine 12:22:�[22m 'setIsExpanded' is assigned a value but never used �[33m�[4m@typescript-eslint/no-unused-vars�[24m�[39m
Line 995: /static/media/VideoMusic.7989a72be5cb7cb340a4.mp4 is 5.46 MB, and won't be precached. Configure maximumFileSizeToCacheInBytes to
Line 996: /static/js/main.5027338a.js is 12.1 MB, and won't be precached. Configure maximumFileSizeToCacheInBytes to change this limit.
Line 997: Search for the �[4m�[33mkeywords�[39m�[24m to learn more about each warning.
Line 998: To ignore, add �[36m// eslint-disable-next-line�[39m to the line before.
Line 999: File sizes after gzip:
Line 1339: �[91m�[39m
Line 1340: �[91mTo prevent exposing secrets, the build will fail until these likely secret values are not found in build output or repo fil
Line 1341: �[91m�[39m
Line 1342: �[91mIf these are expected, use SECRETS_SCAN_SMART_DETECTION_OMIT_VALUES, or SECRETS_SCAN_SMART_DETECTION_ENABLED to prevent det
Line 1343: �[91m�[39m
Line 1344: �[91mFor more information on secrets scanning, see the Netlify Docs: https://ntl.fyi/configure-secrets-scanning�[39m
Line 1345: �[91m�[1m�[22m�[39m
Line 1346: �[91m�[1mSecrets scanning detected secrets in files during build. �[22m�[39m
Line 1347: �[91m�[1m────────────────────────────────────────────────────────────────�[22m�[39m
Line 1348:
Line 1349: �[31m�[1mError message�[22m�[39m
Line 1350: Secrets scanning found secrets in build.
Line 1351:
Line 1352: �[31m�[1mResolved config�[22m�[39m
Line 1353: build:
Line 1354: command: npm run build
Line 1355: commandOrigin: config
Line 1356: environment:
Line 1357: - CI
Line 1358: - NODE_OPTIONS
Line 1359: - NPM_FLAGS
Line 1413: - VITE_SEARCH_APIHOST
Line 1414: - VITE_SEARCH_APIKEY
Line 1415: - VITE_SEARCH_URL
Line 1416: - VITE_TUBETUNES_APIKEY
Line 1417: - VITE_UMAMI_TRACK_ID
Line 1418: - VITE_WEATHER_API_KEY
Line 1419: publish: /opt/build/repo/build
Line 1420: publishOrigin: config
Line 1421: headers:
Line 1422: - for: /*
values:
X-Frame-Options: DENY
headersOrigin: config
redirects:
- from: /*
status: 200
Line 1423: Build failed due to a user error: Build script returned non-zero exit code: 2
Line 1424: Failing build: Failed to build site
Line 1425: Finished processing build request in 3m28.946s
Line 1426: Failed during stage 'building site': Build script returned non-zero exit code: 2
- Remove tracked .env.development from git - Create .env.example template without secrets - Update .gitignore to exclude .env.development - Update README with secure setup instructions - Fixes Netlify secrets scanning deployment error
The feature enables developers to configure request methods, URLs, headers, and request bodies, send API calls, and view formatted responses including status and payload. It aims to simplify API debugging and learning workflows in an interactive and user-friendly way.
No external dependencies were added beyond existing project tooling.
Fixes # (issue)
Type of change
Bug fix (non-breaking change which fixes an issue)
New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to not work as expected)
This change requires a documentation update
How Has This Been Tested?
Tested locally using the development server
Verified API requests using multiple HTTP methods (GET, POST)
Tested valid and invalid request scenarios
Verified loading, success, and error states
Confirmed responsive behavior across screen sizes
Ensured no console warnings or runtime errors
Checklist:
I have performed a self-review of my own code
I have commented my code, particularly in hard-to-understand areas
I have made corresponding changes to the documentation
My changes generate no new warnings
I have added tests that prove my feature works
New and existing unit tests pass locally with my changes
Any dependent changes have been merged and published in downstream modules
Screenshots or example output
