0.0.1 • Published 10 months ago

i18next-prisma-backend v0.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

i18next Prisma backend plugin

A backend plugin for i18next that supports using Prisma to load resources from the data source specified in the schema.prisma configuration file.

Getting Started

Install packages

This package expects the Prisma Client as a peer dependency.

npm

npm install @prisma/client i18next-prisma-backend

yarn

yarn add @prisma/client i18next-prisma-backend

Update your Schema

Update your schema.prisma files to include the following model with a minimum of the following fields:

model i18n {
  namespace   String
  language    String
  key         String
  translation String

  @@id([key, language])
  @@index([language, translation])
}

You may use @@map and @map to specify the underlying database table and field names respectively. The plugin will expect this model to exist.

Apply the schema changes to your database.

Usage

This library supports ESM and CommonJS.

ESM

import i18next from "i18next";
import Backend from "i18next-prisma-backend";

i18next.use(Backend).init({
  // Backend Options
  backend: options
});

CommonJS

const i18next = require("i18next");
const Backend = require("i18next-prisma-backend");

i18next.use(Backend).init({
  // Backend Options
  backend: options
});

Backend Options

{
  // Optional: If you have an existing client instance,
  // you can specifiy it here. Otherwise a new instance
  // will be instanciated.
  client: prisma; // PrismaClient() instance
}

📝 License

Copyright © 2023 Aydrian Howard. This project is MIT licensed.