This PR introduces a React-based API Testing Tool that allows users to build, send, and test HTTP requests directly within ReactPlay.#1645
Conversation
❌ Deploy Preview for reactplayio failed. Why did it fail? →
|
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.
Diagnosis: The build failed because ESLint/Prettier checks stopped the Create React App build: line 991 reports a missing blank line in src/plays/api-request-builder/ApiRequestBuilder.jsx, line 992 and line 994 report stray indentation that violates the prettier/prettier rule. These lint errors make npm run build exit with code 1.
Solution: Update the affected files so they satisfy the lint rules. For example:
/* src/plays/api-request-builder/ApiRequestBuilder.jsx */
// ensure there is a blank line before this statement at line 7
import React from 'react';
import './ApiRequestBuilder.css';
const ApiRequestBuilder = () => {
// ...
};Remove the extra indentation/trailing spaces flagged near lines 105 and 14 of the same files. After fixing the formatting, run npm run lint -- --fix locally to confirm it passes, commit the changes, and redeploy.
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/1645/head
Line 8: Starting to install dependencies
Line 9: mise �[36m~/.config/mise/config.toml�[0m tools: �[34mpython�[0m@3.14.2
Line 10: mise �[36m~/.config/mise/config.toml�[0m tools: �[34mruby�[0m@3.4.8
Line 11: mise �[36m~/.config/mise/config.toml�[0m tools: �[34mgo�[0m@1.25.6
Line 12: v18.20.8 is already installed.
Line 13: Now using node v18.20.8 (npm v10.8.2)
Line 35: Progress: resolved 314, reused 0, downloaded 298, added 0
Line 36: Progress: resolved 331, reused 0, downloaded 316, added 0
Line 37: Progress: resolved 364, reused 0, downloaded 341, added 0
Line 38: Progress: resolved 489, reused 0, downloaded 455, added 0
Line 39: Progress: resolved 707, reused 0, downloaded 648, added 0
Line 40: Progress: resolved 753, reused 0, downloaded 674, added 0
Line 41: Progress: resolved 950, reused 0, downloaded 858, added 0
Line 42: Progress: resolved 1227, reused 0, downloaded 1120, added 0
Line 43: Progress: resolved 1504, reused 0, downloaded 1380, added 0
Line 44: Progress: resolved 1794, reused 0, downloaded 1721, 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: +1760
Line 47: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Line 48: Progress: resolved 1795, reused 0, downloaded 1763, added 743
Line 49: Progress: resolved 1795, reused 0, downloaded 1763, added 1760, done
Line 50: > react-play@1.0.0 prepare /opt/build/repo
Line 51: > husky install
Line 52: husky - Git hooks installed
Line 53: WARN Issues with peer dependencies found
Line 54: .
Line 55: ├─┬ json-graphql-parser 0.1.9
Line 101: + mathjs 11.12.0 (15.1.0 is available)
Line 102: + p5 1.11.11 (2.2.0 is available)
Line 103: + react 18.3.1 (19.2.4 is available)
Line 104: + react-chatbot-kit 2.2.2
Line 105: + react-codemirror2 7.3.0 (9.0.1 is available)
Line 106: + react-color 2.19.3
Line 107: + react-confetti 6.4.0
Line 108: + react-countdown 2.3.6
Line 109: + react-dom 18.3.1 (19.2.4 is available)
Line 110: + react-dropzone 14.4.0
Line 111: + react-error-boundary 3.1.4 (6.1.0 is available)
Line 112: + react-helmet 6.1.0
Line 113: + react-hot-toast 2.6.0
Line 114: + react-icons 4.12.0 (5.5.0 is available)
Line 115: + react-infinite-scroll-component 6.1.1
Line 116: + react-infinite-scroll-hook 4.1.1 (6.0.1 is available)
Line 117: + react-infinite-scroller 1.2.6
Line 118: + react-leaflet 4.2.1 (5.0.0 is available)
Line 119: + react-loader-spinner 5.1.5 (8.0.2 is available)
Line 120: + react-organizational-chart 2.2.1
Line 121: + react-p5 1.4.1 deprecated
Line 976: WARNING : Wednesday, Feb 4, 2026: WARNING : Play not found locally : Random Quotes(random-quotes)
Line 977: INFO : Wednesday, Feb 4, 2026: INFO : Checking play locally: Task-Manager(taskmanager)
Line 978: WARNING : Wednesday, Feb 4, 2026: WARNING : Play not found locally : Task-Manager(taskmanager)
Line 979: INFO : Wednesday, Feb 4, 2026: INFO : Checking play locally: ManageTask(managetask)
Line 980: WARNING : Wednesday, Feb 4, 2026: WARNING : Play not found locally : ManageTask(managetask)
Line 981: INFO : Wednesday, Feb 4, 2026: INFO : Checking play locally: 25(25)
Line 982: WARNING : Wednesday, Feb 4, 2026: WARNING : Play not found locally : 25(25)
Line 983: INFO : Wednesday, Feb 4, 2026: INFO : Checking play locally: Soham Bhattacharya(soham-bhattacharya)
Line 984: WARNING : Wednesday, Feb 4, 2026: WARNING : Play not found locally : Soham Bhattacharya(soham-bhattacharya)
Line 985: Creating an optimized production build...
Line 986: Failed during stage 'building site': Build script returned non-zero exit code: 2
Line 987: �[31mFailed to compile.�[39m
Line 988: �[31m�[39m
Line 989: [eslint]
Line 990: src/plays/api-request-builder/ApiRequestBuilder.jsx
Line 991: �[1mLine 7:1:�[22m Expected blank line before this statement �[31m�[4mpadding-line-between-statements�[24m�[39m
Line 992: �[1mLine 105:1:�[22m Delete ······ �[31m�[4mprettier/prettier�[24m�[39m
Line 993: src/plays/api-request-builder/components/HistoryPanel.jsx
Line 994: �[1mLine 14:1:�[22m Delete ···· �[31m�[4mprettier/prettier�[24m�[39m
Line 995: Search for the �[4m�[31mkeywords�[39m�[24m to learn more about each error.
Line 996: �[91m�[1m�[22m�[39m
Line 997: �[91m�[1m"build.command" failed �[22m�[39m
Line 998: �[91m�[1m────────────────────────────────────────────────────────────────�[22m�[39m
Line 999:
Line 1000: �[31m�[1mError message�[22m�[39m
Line 1001: Command failed with exit code 1: CI= npm run build
Line 1002:
Line 1003: �[31m�[1mError location�[22m�[39m
Line 1004: In Build command from Netlify app:
Line 1005: CI= npm run build
Line 1006:
Line 1007: �[31m�[1mResolved config�[22m�[39m
Line 1008: build:
Line 1009: command: CI= npm run build
Line 1010: commandOrigin: ui
Line 1011: environment:
Line 1012: - CI
Line 1013: - NODE_OPTIONS
Line 1068: - VITE_SEARCH_APIHOST
Line 1069: - VITE_SEARCH_APIKEY
Line 1070: - VITE_SEARCH_URL
Line 1071: - VITE_TUBETUNES_APIKEY
Line 1072: - VITE_UMAMI_TRACK_ID
Line 1073: - VITE_WEATHER_API_KEY
Line 1074: publish: /opt/build/repo/build
Line 1075: publishOrigin: ui
Line 1076: redirects:
Line 1077: - from: /*
status: 200
to: /index.html
redirectsOrigin: config
Line 1078: Build failed due to a user error: Build script returned non-zero exit code: 2
Line 1079: Failing build: Failed to build site
Line 1080: Finished processing build request in 3m50.314s
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
