Nearly Pooped Myself

    @winstrike/next-i18next-koa
    TypeScript icon, indicating that this package has built-in type declarations

    0.1.14 • Public • Published

    next-i18next-koa

    npm version

    The easiest way to translate your NextJs apps. With Koa support only. Forked from next-i18next.

    What is this?

    next-i18next-koa is a fork of next-i18next with Koa server support only. This fork uses koa-i18next-middleware-fixed instead of i18next-express-middleware.

    Install

    npm i @winstrike/next-i18next-koa or yarn add @winstrike/next-i18next-koa

    Project setup (server.js)

    nextI18NextMiddleware() returns an array of middleware. You should use all of them, as in this example:

    const Koa = require("koa");
    const Router = require("koa-router");
    const serve = require("koa-static");
    const mount = require("koa-mount");
    const nextApp = require("next");
    const nextI18NextMiddleware = require("@winstrike/next-i18next-koa/middleware");
    
    const nextI18Next = require("./lib/i18n");
    
    const app = nextApp({
      dev: process.env.NODE_ENV !== "production",
    });
    const handle = app.getRequestHandler();
    
    app.prepare().then(() => {
      const server = new Koa();
      const router = new Router();
    
      // Access to locales for preloading them from client-side i18next
      server.use(mount("/locales", serve("./locales")));
    
      router.get("*", async (ctx) => {
        await handle(ctx.req, ctx.res);
        ctx.respond = false;
      });
    
      // Use all of middlewares
      const middlewares = nextI18NextMiddleware(nextI18Next);
      middlewares.forEach((middleware) => {
        server.use(middleware);
      });
    
      server.use(router.routes());
      server.listen(port, () => {
        console.log(`> Ready on http://localhost:${port}`);
      });
    });

    Other information

    You can find other information about next-i18next in the original readme.

    Notes

    Install

    npm i @winstrike/next-i18next-koa

    DownloadsWeekly Downloads

    641

    Version

    0.1.14

    License

    MIT

    Unpacked Size

    92.1 kB

    Total Files

    59

    Last publish

    Collaborators

    • shuvalov-anton
    • paraboom
    • vitaliyzaytsev
    • janealter