xeipuuv/gojsonschema

Usage of gojsonschema in prominent open-source or large-scale projects?

anatoly-cnvrg opened this issue · 0 comments

Hello!

I've recently integrated gojsonschema into our project. During code review, some of my colleagues expressed concerns, primarily around whether utilizing this library aligns with idiomatic Go practices. They've asked if I can reference any significant open-source projects or large-scale applications that employ this library.

After some searching, I wasn't able to pinpoint such projects. If anyone here could direct me to such examples, I'd greatly appreciate it.

Furthermore, I'd love some insight or opinions on the debate of its idiomatic nature in Go. As someone relatively new to Go, I value diverse perspectives to help shape my understanding.

Thank you in advance for your time and assistance!

P.S. I consulted with ChatGPT, and here's its perspective on the topic:

gojsonschema is a popular library in Go for JSON schema validation, and it is used in various projects. However, its usage in "big" open source Go projects can vary depending on the specific needs of those projects. Many large projects tend to have custom validation logic or use other mechanisms for ensuring data integrity.

If you're curious about the adoption of gojsonschema in popular projects, you can:

  1. Check the GitHub repository: Visiting the GitHub repository of gojsonschema allows you to see which projects depend on it. The "Used by" button on GitHub showcases repositories that have gojsonschema as a dependency.

  2. Search across GitHub repositories: You can use GitHub's search functionality to find references to gojsonschema across various Go repositories. This can give you an idea of its adoption.

  3. Review major open-source projects: If you have specific big projects in mind, you can check their go.mod file (if they use Go modules) or vendor directory to see if gojsonschema is among their dependencies.

However, it's important to note that the adoption of a library in big projects isn't the only measure of its quality or suitability. Depending on the use case, even lesser-known libraries or custom implementations might be more appropriate. Always evaluate libraries based on your specific needs, the library's community support, its maintainability, and other relevant factors.