JSPM

  • Created
  • Published
  • Downloads 82
  • Score
    100M100P100Q121834F
  • License MIT

Visulima API platform is a set of tools to build and consume web APIs

Package Exports

    Readme

    Visulima Api platform

    Visulima api platform is built on top of

    OpenAPI (Swagger) specification, node-rate-limiter-flexible, @visulima/connect

    With a more intuitive API for creating HTTP API endpoints.


    [typescript-image][typescript-url] [![npm-image]][npm-url] [![license-image]][license-url]


    Daniel Bannert's open source work is supported by the community on GitHub Sponsors


    Features

    Installation

    Npm

    npm install @visulima/api-platform zod

    Installation for Next.js

    npm install @visulima/api-platform zod @visulima/fs

    Yarn

    yarn add @visulima/api-platform zod

    Installation for Next.js

    yarn add @visulima/api-platform zod @visulima/fs

    Pnpm

    pnpm add @visulima/api-platform zod

    Installation for Next.js

    pnpm add @visulima/api-platform zod @visulima/fs

    To use the swagger-ui or the redoc-ui you need to install the following packages:

    npm install swagger-ui-react

    To have a styled version of the swagger-ui you need to add the following css to your project:

    import "swagger-ui-react/swagger-ui.css";

    Note: For next.js you can add it to your _app.tsx file

    Or

    npm install redoc

    Usage

    CLI:

    To use the CLI, you need to install this missing packages:

    npm install cli-progress commander chalk
    yarn add cli-progress commander chalk
    pnpm add cli-progress commander chalk

    Then you can use the CLI like this:

    // Shows the help with all available commands
    
    pnpm api-platform --help

    connect

    This package has an extended version of the @visulima/connect package. That means you can use all the features of the @visulima/connect package, in addition to the features of this package.

    // pages/api/hello.js
    import type { NextApiRequest, NextApiResponse } from "next";
    import { createNodeRouter } from "@visulima/api-platform";
    import cors from "cors";
    
    // Default Req and Res are IncomingMessage and ServerResponse
    // You may want to pass in NextApiRequest and NextApiResponse
    const router = createNodeRouter<NextApiRequest, NextApiResponse>();
    
    router.get((req, res) => {
        res.send("Hello world");
    });
    
    export default router.nodeHandler();

    Supported Node.js Versions

    Libraries in this ecosystem make the best effort to track Node.js’ release schedule. Here’s a post on why we think this is important.

    Contributing

    If you would like to help take a look at the list of issues and check our Contributing guild.

    Note: please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

    Credits

    License

    The visulima api-platform is open-sourced software licensed under the [MIT][license-url]

    [typescript-url]: https://www.typescriptlang.org/ "TypeScript" "typescript" [license-image]: https://img.shields.io/npm/l/@visulima/api-platform?color=blueviolet&style=for-the-badge [license-url]: LICENSE.md "license" [npm-image]: https://img.shields.io/npm/v/@visulima/api-platform/latest.svg?style=for-the-badge&logo=npm [npm-url]: https://www.npmjs.com/package/@visulima/api-platform/v/latest "npm"