Plugin that converts types to JSON Schemas just via suffixed import
pnpm i -D vite-plugin-type-to-schema # (or npm instead of pnpm)
# or
yarn add vite-plugin-type-to-schema --dev
// vite.config.js
import typeToSchema from 'vite-plugin-type-to-schema';
import { defineConfig } from 'vite';
export default defineConfig({
plugins: [typeToSchema()]
});
typeToSchema({
suffix?: '?schema' // Import path suffix
dts?: 'schemas.d.ts' // Disable (false), or change path (string) of dts file
options?: {} // https://github.com/vega/ts-json-schema-generator#options
})
See this test and fixture to learn behaviour of schema compiling