Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GSOC 2025 : JSON Schema Visualization Tool - Interactive Graphical Viewer #868

Open
jagpreetrahi opened this issue Jan 25, 2025 · 7 comments
Labels
gsoc Google Summer of Code Project Idea

Comments

@jagpreetrahi
Copy link

jagpreetrahi commented Jan 25, 2025

Project title
JSON Schema Visualization Tool

Brief Description
Understanding and working with JSON Schemas can become increasingly difficult as schemas grow in complexity, involving nested structures and numerous interdependencies. Developers and organizations often face challenges in comprehending, debugging, and effectively communicating the relationships between schema components, especially in large-scale projects. Existing tools lack the features needed to simplify the visualization and navigation of these schemas, leading to inefficiencies in schema development and maintenance. This project proposes an Interactive JSON Schema Visualization Tool to address these issues. The tool will offer a user-friendly graphical interface for visualizing and exploring JSON Schemas, making them more accessible and manageable for developers of all levels.

Expected Outcomes
Intuitive Visualization : Represent JSON Schemas as graphs with nodes and edges, showing objects, properties, and references.
Enhanced Developer Workflow : Enable schema debugging and editing directly within the visualization interface.
Integration Capabilities : Offer an API or plugin to integrate the visualization tool with IDEs, CI/CD pipelines, or schema validation workflows.
Accessibility Features : Include search and filtering options to locate specific elements in the schema quickly.

Skills Required
JSON Schema Expertise : Proficiency in JSON Schema structure, dialects, and use cases.

Frontend Development: Experience with JavaScript frameworks (React, Vue.js) for interactive UI development , and skilled in visualization libraries like D3.js or Cytoscape.js.

Backend Development (Optional): Familiarity with backend technologies for API integration and handling large schemas.

Mentors
@benjagm

Expected Difficulty
Medium.

Expected Time Commitment
Approximately 300–350 hours, with significant time allocated to UI design, community feedback, and integration testing

@benjagm benjagm added the gsoc Google Summer of Code Project Idea label Feb 4, 2025
@VishwapriyaVelumula
Copy link

Hello,
I'm Vishwapriya, currently pursuing 3rd year of BTech. I didn't have any prior knowledge about JSON, but I'm interested in this idea, can anyone please tell me where to start and how to start.

@vishwajeet1729
Copy link

vishwajeet1729 commented Feb 19, 2025

Hey @benjagm
I am a bit confused. Since the backend is optional, are there any real advantages to implementing one?

Since this is primarily a frontend-based project, how would a local IDE connect to the frontend? Would this require developing an additional tool, like a lightweight extension for an IDE? However, such an extension wouldn't be widely applicable across different IDEs.

If the backend is not implemented, does that mean the integration part will be automatically skipped? Please clarify .

@jagpreetrahi
Copy link
Author

Hey @vishwajeet1729 , this project aims to enhance the user experience when working with JSON schema by providing graphical visualization. There are multiple tools available for this, such as D3.js, Cytoscape.js, and vis.js. While the backend is optional, that doesn’t mean integration is automatically skipped—it depends on the use case. If backend functionality is required for data processing or storage, it can be implemented, but our primary focus remains on improving the experience. Regarding IDE integration, a lightweight extension could work, but its applicability across different IDEs would need consideration.

@gregsdennis
Copy link
Member

Backends require server support and cost a fair amount of money to maintain: money that this project doesn't have.

@jagpreetrahi
Copy link
Author

Yeah , this could also be the case

@vishwajeet1729
Copy link

@gregsdennis @jagpreetrahi do we have a community discussion link? I have some improvements that could be helpful.

@benjagm
Copy link
Collaborator

benjagm commented Feb 20, 2025

Hi everyone. Let's keep the discussion for ideas and improvements here. As of now, this is just an idea that needs to be ranked and needs a mentor. This means, depending on the idea's prioritization, this and other ideas could left out of the list of allocated slots.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
gsoc Google Summer of Code Project Idea
Projects
None yet
Development

No branches or pull requests

5 participants