Problem
Wikimedia developers currently lack a unified, accessible, and modern interactive sandbox experience for REST APIs. The existing use of SwaggerUI across various platforms fails to fully support internationalization, does not align with Wikimedia’s design system, and lacks full compliance with open source standards.
Solution
Design a Codex-based API sandbox interface that can serve as Wikimedia’s standardized, fully internationalized API sandbox experience. This solution should:
- Reflect modern expectations and best practices for REST API exploration and documentation
- Be built with Codex components, allowing consistency with Wikimedia interfaces and support for internationalization
- Support executing API calls and toggling between static and interactive modes
- Present navigation and UI elements that are translatable and correctly rendered for both LTR and RTL languages
- Integrate links to access and download specs, and browse supplemental documentation
- Support browsing and interaction across all relevant Wikimedia API families and modules
Process
- Collect relevant information from existing research materials (See Research notes)
- Create a comparative map of OpenAPI-to-UI rendering technology (Swagger UI, RapiDoc, Scalar, ReDoc) in order to detect opportunities and best practices (See OpenAPI-to-UI map in Miro)
- [In Progress] Sandbox design exploration (See early design exploration in Figma)
- Inform designs with help from target sandbox users (potentially via a focus group session with WMF staff)
- Validate the technical feasibility of the new Sandbox design
Considerations
The suitability of the new standardized sandbox design will be both informed and validated through structured user feedback. In addition to ensuring the design is useful, usable, and technically feasible, we aim to make well-informed recommendations on several key design and implementation questions:
- Production vs. self-contained test environments: Should test calls in the sandbox execute against live production APIs or be routed through isolated, self-contained environments? This choice impacts developer confidence, security, and data integrity.
- Beta module visibility: Should beta or experimental API modules be shown by default, or accessed via an opt-in toggle?
Acceptance criteria
- We create high-fidelity design mocks using Codex, informed by product requirements, best practices, detected pinpoints and opportunities
- The feasibility of implementation is confirmed with the MediaWiki Interfaces team
- Mocks are revised post-feedback from engineers, product, and user validation sessions and are ready for handover