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

Discussion on the future of schema generators #295

Open
HoldYourWaffle opened this issue Jun 1, 2019 · 10 comments
Open

Discussion on the future of schema generators #295

HoldYourWaffle opened this issue Jun 1, 2019 · 10 comments

Comments

@HoldYourWaffle
Copy link
Contributor

There's currently some discussion on the future of schema generators over at vega/ts-json-schema-generator#101.

It's mostly related to uniting the 3 big (and unfortunately buggy) modules that are used for the same purpose (generating JSON schema's from TypeScript sources) together into one, (mostly) feature complete all-round generator.

These 3 modules are:

We're currently thinking about deprecating this module in favor of vega/ts-json-schema-generator somewhere in the future (for various reasons you can read in the aforementioned issue). However, nothing has really been decided yet and we would love to hear some more opinions on this matter!

@hammadzz
Copy link

@domoritz I think it maybe time to make that call!

Following some of the issues here it does seem you may have subconsciously deprecated this module in favour of vega/ts-json-schema-generator. It does make sense to me to reduce redundant effort. It solved my issue and seems to have more support.

@domoritz
Copy link
Collaborator

The advantage of this library here is that it is a single file. Yes, I do not have the cycles to maintain this library actively but if someone wants to use it and it works for them as it, it may still be a right tool.

Having said that, some things may change over the next few months and I am open to reconsidering my decision later.

@JavierPAYTEF
Copy link

It would be good to point somewhere because there are a lot of pending pull requests and issues. I was about to ask about supporting bigint but I see a lot of people mentioning not supporting Symbol with no answers, and most of the issues don't seem to have any answers either. Is this still active?

@alfaproject
Copy link

If I'm starting a new project that requires this functionality, should I prefer this library, or would you recommend another one?

@domoritz
Copy link
Collaborator

vega/ts-json-schema-generator is a lot better than this one on edge cases.

I'm curious why you want to start a new project. Maybe you can help with the new one I linked to.

@alfaproject
Copy link

I didn't mean a project to replace any of these libraries. I mean a consumer for my own application. So I guess vega/ts-json-schema-generator is what you recommend then, thanks!

@domoritz
Copy link
Collaborator

Yes. This repo is in maintenance mode and I personally don't fix anything and only accept prs and make releases.

@bdarcus
Copy link

bdarcus commented May 17, 2023

FWIW, I am working on a project where I started with this package for schema generation, then moved to ts-json-schema-generator based on this issue, where I triggered a bug there on a feature branch that this package avoids.

EDIT: minimal examples that generates an incorrect schema, in this gist.

Does anyone have recent experience with quicktype in comparison?

@tomwidmer
Copy link

tomwidmer commented Jan 15, 2024

quicktype appears to use @mark.probst/typescript-json-schema, which is a mysterious fork of this repo - I don't know where the source code lives. See e.g. https://github.com/glideapps/quicktype/blob/master/packages/quicktype-typescript-input/src/index.ts

@domoritz
Copy link
Collaborator

Odd. I wonder why they don't use this fork.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants