RxDB Example code using GraphQL

This project is a sample implementation demonstrating the integration of RxDB, a real-time, offline-first database, with GraphQL and Prisma. It provides a practical example of how these technologies can build robust, scalable applications.

SCR-20231110-mdic

Using this example

Run the following command:

git clone https://github.com/ccfiel/rxdb-graphql-prisma-sample.git

cd rxdb-graphql-prisma-sample

pnpm install

cd apps/graphql

pnpm generate

pnpm createdb

pnpm seed

cd ../..

pnpm dev

URL and Server ports?

Server http://localhost:3001

Client http://localhost:5174

What's inside?

This Turborepo includes the following packages/apps:

Apps and Packages

  • docs: app
  • web: rxdb svelte client app
  • graphql: rxdb graphql server app
  • ui: a stub Svelte component library shared by both web and docs applications
  • eslint-config-custom: eslint configurations (includes eslint-plugin-svelte and eslint-config-prettier)

Each package/app is 100% TypeScript.

Utilities and framework used.

This Turborepo has some additional tools already setup for you:

  • prisma: Next-generation Node.js and TypeScript ORM prisma
  • graphql-yoga: The fully-featured GraphQL Server with focus on easy setup, performance and great developer experience. graphql-yoga
  • pothos: The most type-safe way to build GraphQL schemas in typescript pothos
  • sqlite: SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine. sqlite
  • prisma: Next-generation Node.js and TypeScript ORM prisma
  • sveltekit: a svelte-kit app
  • turborepo: is an incremental bundler and build system optimized for JavaScript and TypeScript, written in Rust. turborepo