Registry / database / prisma-generator-proto-ms-mysql

prisma-generator-proto-ms-mysql

JSON →
library0.1.11jsnpmunverified

Prisma generator that produces protobuf .proto files with CRUD service definitions for all tables in a MySQL database. Current version 0.1.11, last updated October 2023. Designed for microservices exposing gRPC endpoints directly from a Prisma schema. Only supports MySQL datasources. Different from generic proto generators by tightly coupling to Prisma's MySQL introspection, outputting service, message, and enum definitions automatically. Requires Node.js >= 18.0. Release cadence is irregular.

npm install prisma-generator-proto-ms-mysql
INSTALL
IMPORT
SIG · PRISMA-GENERATOR-P
P
prisma-generator-proto-ms-mysql
databasejavascriptv0.1.11
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

protoGenerator
generator protoGenerator { provider = "prisma-generator-proto-ms-mysql" output = "../proto" }
generator proto { provider = "prisma-generator-proto" }
Generator is configured in schema.prisma, not imported directly in code.
PrismaClient
import { PrismaClient } from '@prisma/client'
const PrismaClient = require('prisma')
PrismaClient is generated by Prisma after running prisma generate with the generator.
ServiceProto
// Generated .proto files are treated as assets, not imported in JS/TS directly.
import service from './output/service.proto'
The generator outputs .proto files; they are used by gRPC tooling (e.g., protobufjs, grpc-tools), not imported as modules.

Configure prisma generator in schema.prisma with MySQL datasource and run prisma generate to produce proto files for each model.

// schema.prisma datasource db { provider = "mysql" url = env("DATABASE_URL") } generator protoGenerator { provider = "prisma-generator-proto-ms-mysql" output = "../proto" } model User { id Int @id @default(autoincrement()) email String @unique name String? } # Then run: # npx prisma generate # Output: ../proto/user.proto (one per model)
Debug
Known issues
gotchaOnly MySQL datasource is supported. Using PostgreSQL or SQLite will fail silently or produce no output.
fix
Ensure datasource provider is 'mysql'.
affects: >=0.0.0
gotchaModel names must not contain underscores; generated proto names may be invalid identifiers.
fix
Rename models to use PascalCase without underscores.
affects: >=0.0.0
breakingVersion 0.1.x changed output directory from default './proto' to require explicit 'output' setting.
fix
Add output = "../proto" in generator configuration.
affects: >=0.1.0
Errors
Common errors & fixes
Error: Generator prisma-generator-proto-ms-mysql not found
Package not installed locally
fix
npm install prisma-generator-proto-ms-mysql
Generator 'protoGenerator' block is invalid: unknown argument 'output'
Using version prior to 0.1.0 that did not support 'output' parameter
fix
Update to >=0.1.0 and add output option, or remove output argument.
ENOENT: no such file or directory, open '.../proto/xxx.proto'
Output directory does not exist or is a relative path that cannot be resolved
fix
Create the output directory or provide an absolute path.
Upgrade
Version history
0.1.11latest on npm
Audit
Dependencies
prismaoptionalRuntime dependency required to run Prisma engine; generator invoked via prisma generate
Agent activity
4 hits · last 30 days
node
4
Resources
prisma-generator-proto-ms-mysql — npm install prisma-generator-proto-ms-mysql · libregistry