Hi Yuan Bao, I'm Goutam K, a GSoC 2026 applicant for the JSON Schema to Form UI project for APISIX.
About me: Software Engineer at Accenture, with 6 merged PRs in apache/burr. Most relevant is PR #643, I traced conditional execution paths through a multi-agent orchestration system, identified the branching contract, and built routing logic around it. The same pattern applies to oneOf rendering in JSON Schema: detect the active sub-schema, render only that, discard the rest. My approach: a runtime React component (SchemaForm) that reads any APISIX plugin's JSON Schema and renders a validated form with no manual UI code. TypeRenderer routes each node recursively to the correct widget. oneOf uses a dropdown selector with unconditional value discard on sub-schema switching. Dependencies use a ConditionalField that watches the trigger field in React state. AJV compiled once on mount, errors stored by JSON path, displayed inline per widget. I reviewed the plugin schema directory before writing my proposal. I noticed that plugins like limit-count and traffic-split use oneOf patterns where sub-schemas can share field names with different type constraints, which is the hardest rendering case. My plan handles it with unconditional value discard. I have confirmed 20–25 hrs/week availability during the GSoC period with no time off planned. Two questions I'd value your input on: - Are there known plugin schemas with edge cases in oneOf or dependencies that the community has already run into? - Is there an existing widget pattern in the Dashboard codebase I should follow for consistency rather than building from scratch? Thanks for your time. Goutam K [email protected] | github.com/goutamk09
