An open API service indexing awesome lists of open source software.

https://github.com/bur4kbey/express-superjson

Express middleware for Superjson integration, providing enhanced JSON serialization in HTTP responses.
https://github.com/bur4kbey/express-superjson

express middleware superjson

Last synced: 11 days ago
JSON representation

Express middleware for Superjson integration, providing enhanced JSON serialization in HTTP responses.

Awesome Lists containing this project

README

          

[![NPM Version](https://img.shields.io/npm/v/express-superjson?style=for-the-badge&logo=npm&color=blue&cacheSeconds=3600)](https://npmjs.com/package/express-superjson)
[![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/bur4kbey/express-superjson/test.yml?style=for-the-badge&label=tests&cacheSeconds=3600)](https://github.com/BUR4KBEY/express-superjson/actions/workflows/test.yml)
[![Codecov](https://img.shields.io/codecov/c/github/bur4kbey/express-superjson?style=for-the-badge&cacheSeconds=3600)](https://app.codecov.io/gh/BUR4KBEY/express-superjson)
[![GitHub License](https://img.shields.io/github/license/bur4kbey/express-superjson?style=for-the-badge)](https://github.com/BUR4KBEY/express-superjson/blob/main/LICENSE)
[![GitHub Repo stars](https://img.shields.io/github/stars/bur4kbey/express-superjson?style=for-the-badge&label=%E2%AD%90%20STARS&color=yellow&cacheSeconds=3600)](https://github.com/BUR4KBEY/express-superjson)

# ๐Ÿ”„ [express-superjson](https://npmjs.com/package/express-superjson)

Express middleware that seamlessly integrates [Superjson](https://github.com/blitz-js/superjson) into your Express.js applications, enabling automatic handling of JavaScript built-in types in HTTP responses.

## ๐Ÿš€ Installation

Install the package using your preferred package manager. Here's an example using `pnpm`:

```bash
pnpm add superjson express-superjson
```

## ๐Ÿ“ Example Usage

```ts
import express from 'express';
import superjsonMiddleware from 'express-superjson';

const app = express();

app.use(express.json());

// This middleware must be registered after `express.json()` middleware.
app.use(superjsonMiddleware());

app.get('/', (req, res) => {
res.json({ date: new Date() });
});

app.listen(3000, () => console.log('Application is running on port 3000.'));
```

Send a **GET** request to `http://localhost:3000` and you'll receive a **Superjson** response like below:

```
{
"json": {
"date": "2023-01-01T00:00:00.000Z"
},
"meta": {
"values": {
"date": ["Date"]
}
}
}
```

## ๐Ÿงช Code Coverage and Tests

Tests are crucial for ensuring that the library functions as expected. You can review the code coverage reports by visiting [**Codecov**](https://app.codecov.io/gh/BUR4KBEY/express-superjson). The primary objective is to achieve complete coverage of the entire codebase through rigorous testing.

## โ˜• Support

If you find this project useful and would like to support [me](https://github.com/BUR4KBEY), you can do so by visiting [my website](https://burakbey.dev).

Buy me a coffee