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

Reply via email to