Skip to content
This repository was archived by the owner on Jul 28, 2025. It is now read-only.

mixxtor/adonisjs-flydrive

Repository files navigation

AdonisJS Flydrive

⚠️ This package is deprecated. Use the official @adonisjs/drive package instead.

AdonisJS FlyDrive integrates the Flydrive file storage library into AdonisJS 6, providing a seamless cloud storage solution within the AdonisJS framework. This package leverages FlyDrive’s unified API to manage file storage across various cloud services and local filesystems.

This package brings the versatility of Flydrive to AdonisJS, allowing you to manage file storage efficiently and adaptively within the AdonisJS ecosystem.

Getting Started

npm install adonisjs-flydrive

Configuration

node ace configure adonisjs-flydrive

Settings can be configured in config/flydrive.ts

Sample config:

import app from '@adonisjs/core/services/app'
import { env } from '@adonisjs/core/build/config'
import { defineConfig } from 'adonisjs-flydrive'
import { FSDriver } from 'flydrive/drivers/fs'
import { S3Driver } from 'flydrive/drivers/s3'
import { GCSDriver } from 'flydrive/drivers/gcs'

export default defineConfig({
  default: 'fs',
  services: {
    fs: () =>
      new FSDriver({
        location: app.tmpPath(),
        visibility: 'private',
      }),

    gcs: () =>
      new GCSDriver({
        region: 'us-east-1',
        credentials: {
          accessKeyId: env('GCS_CLIENT_ID'),
          secretAccessKey: env('GCS_SECRET_KEY'),
        },
        visibility: 'public',
      }),

    s3: () =>
      new S3Driver({
        credentials: {
          accessKeyId: env('AWS_S3_KEY'),
          secretAccessKey: env('AWS_S3_SECRET'),
        },
        region: env('AWS_S3_REGION'),
        bucket: env('AWS_S3_BUCKET'),
        visibility: 'private',
      })
  },
})

See flydrive for more information

Usage

import flydrive from 'adonisjs-flydrive/services/main'

const drive = flydrive.use('fs')
await drive.put('file.txt', 'hello world')
const file = await drive.get('file.txt')
await drive.delete('file.txt')

Contributing

See CONTRIBUTING.md

License

See LICENSE.md

About

AdonisJS 6 filesystem provider

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages