Skip to Content
Introduction

Uplo

Handle file uploads to various storage services like Amazon S3, Google Cloud or etc. It also supports various type of ORM adapters, like Prisma.

Features

  • TypeScript ready
  • Direct uploads
  • Supports multiple services
  • Multiple ORM adapters
  • File analyzers

Getting started

Add @uplo/server (or @uplo/node if using Node) to your package.json

npm i @uplo/server

Install Adapter (for example Prisma)

npm i @uplo/adapter-prisma dataloader

Install Service (for example S3)

npm i @uplo/service-s3

Define uplo instance

import Uplo from '@uplo/server'; import PrismaAdapter from '@uplo/adapter-prisma'; import S3Service from '@uplo/service-s3'; const config = { privateKey: process.env.APPLICATION_SECRET, // Used to sign direct upload keys signedIdExpiresIn: 60 * 60, // Time how long a Signed ID is valid }; const uplo = Uplo({ config, adapter: new PrismaAdapter({ prisma }), services: { s3: S3Service({ isPublic: false, region: process.env.AWS_REGION, bucket: process.env.AWS_BUCKET, accessKeyId: '*****', secretAccessKey: '*****', }), }, attachments: { }, });
Last updated on