@elevatejs/ts-mongo-codegen
v3.0.0
Published
This project generates types for a seamless integration between GraphQL and MongoDB.
Downloads
198
Maintainers
Readme
TypeScript Mongo Codegen
This project generates types for a seamless integration between GraphQL and MongoDB. Generate All CRUD and Pagination Operations (10 minutes or less)
Usage
yarn add @elevatejs/ts-mongo-codegen
./codegen.json
{
"schema": "http://localhost:8082",
"generates": {
"./src/gql/types.ts": {
"plugins": [
"typescript",
"typescript-operations",
"typescript-resolvers",
"ts-mongo-codegen",
]
}
}
}
./gql/books.schema
type Book @collection(name: "books") {
id: ObjectId
title: String
author: String
}
./src/stores/mongo.ts
import { connect } from 'ts-mongo-codegen'
import { mongoFactory } from '../gql/types'
export async function mongoStore(url: string, name: string) {
const db = (await connect(url)).db(name)
const datastore = mongoFactory(db)
// datastore.books is a mongo collection
return datastore
}
Upcoming Release
- Augment your schema with CRUD operations for your collections.
- Generate a changelog to keep a running list of changes to a document
- Generate subscriptions
Turns This
Into This