endurance-js

Create API resources for Next.js

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
endurance-js
0.0.21a year agoa year agoMinified + gzip package size for endurance-js in KB

Readme

<h3 align="center">Endurance.js</h3>
<p align="center">Api Resources for Next.js</p>
<p align="center">
Open Source. Full Stack. Own Your Data.
</p>
<p align="center" style="align: center;">
   <a href="https://packagephobia.com/result?p=endurance-js">
     <img src="https://packagephobia.com/badge?p=endurance-js" alt="Bundle Size"/>
   </a>
   <a href="https://www.npmtrends.com/endurance-js">
     <img src="https://img.shields.io/npm/dm/endurance-js" alt="Downloads" />
   </a>
   <a href="https://github.com/capiloky/endurance-js/stargazers">
     <img src="https://img.shields.io/github/stars/capiloky/endurance-js" alt="Github Stars" />
   </a>
   <a href="https://www.npmjs.com/package/endurance-js">
     <img src="https://img.shields.io/github/v/release/capiloky/endurance-js?label=dev" alt="Github Stable Release" />
   </a>
</p>

Overview

Endurance.js is a Next.js API Resource library that allows you to create API resources for your Next.js application. It is built on top of Next.js API Routes and uses Prisma ORM to connect to your database.

Getting Started

Install Endurance JS

To get started, you can install Endurance.js using npm:
```bash npm2yarn2pnpm npm install endurance-js
### Add API route

To add NextAuth.js to a project create a file called `[[...path]].ts` in `pages/api`. This contains the dynamic route handler for Endurance.js which will also contain all of your global Endurance.js configurations.

```typescript title="pages/api/[[...path]].ts" showLineNumbers
import serverHandler from "endurance-js/lib/router";
import { NextApiRequest, NextApiResponse } from "next";
import entities from "../../Entity";

export default function handler(req: NextApiRequest, res: NextApiResponse) {
    return serverHandler(req, res, {
        entities: entities,
    });
}

All requests to /api/* (users, posts, roles, etc.) will automatically be handled by Endurance.js.