Skip to content
/ prisma Public
forked from prisma/prisma1

⚡️ Prisma turns your database into a realtime GraphQL API

License

Notifications You must be signed in to change notification settings

emipc/prisma

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WebsiteDocsBlogForumSlackTwitter

CircleCI Slack Status npm version

Prisma - turn your database into a GraphQL API. Prisma lets you design your data model and have a production ready GraphQL API online in minutes.

The Prisma GraphQL API provides powerful abstractions and building blocks to develop flexible, scalable GraphQL backends:

  1. Type-safe API that can be used from frontend and backend, including filters, aggregations and transactions.
  2. Data modeling with declarative SDL. Prisma migrates your underlying database automatically.
  3. Realtime API using GraphQL Subscriptions.
  4. Advanced API composition using GraphQL Bindings and schema stitching.
  5. Works with all frontend frameworks like React, Vue.js, Angular (Quickstart Examples).

Contents

Quickstart

Watch this 4 min tutorial or follow the steps below to get started with Prisma:

  1. Install the CLI via NPM:
npm install -g prisma
  1. Create a new service:

The following command creates all files you need for a new service.

prisma init
  1. Define your data model:

Edit datamodel.graphql to define your data model using the GraphQL SDL notation.

type Tweet {
  id: ID! @unique
  createdAt: DateTime!
  text: String!
  owner: User!
  location: Location!
}

type User {
  id: ID! @unique
  createdAt: DateTime!
  updatedAt: DateTime!
  handle: String! @unique
  name: String
  tweets: [Tweet!]!
}

type Location {
  latitude: Float!
  longitude: Float!
}
  1. Deploy your service:

To deploy your service simply run the following command and select one of the hosted development clusters or setup a local Docker-based development environment:

prisma deploy
  1. Connect to your GraphQL endpoint:

Use the endpoint from the previous step in your frontend (or backend) applications to connect to your GraphQL API.

  1. Read more in the dedicated quickstarts for your favorite technology

Examples

Architecture

Prisma is a secure API layer that sits in front of your database. Acting as a proxy, Prisma exposes a powerful GraphQL API and manages Rate-Limiting, Authentication, Logging and a host of other features. Because Prisma is a standalone process, it can be scaled independently from your application layer and provide scalable subscriptions infrastructure.

Supported Databases

Prisma can be used for MySQL Databases out of the box. More database connectors will follow:

Join the discussion or contribute to influence which we'll work on next!

GraphQL API

The most important component in Prisma is the GraphQL API:

  • Query, mutate & stream data via GraphQL CRUD API
  • Define and evolve your data model using GraphQL SDL

Try the online demo: open GraphQL Playground

Community

Prisma has a community of thousands of amazing developers and contributors. Welcome, please join us! 👋

Contributing

Your feedback is very helpful, please share your opinion and thoughts!

About

⚡️ Prisma turns your database into a realtime GraphQL API

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Scala 80.6%
  • TypeScript 18.2%
  • Other 1.2%