open-index/open-npm huggingface dataset:
npm package: @filenest/adapter-nextjs
Description: Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
Author: nordowl
Latest version: 0.7.2

# @filenest/adapter-nextjs

Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
npm package: @filenest/adapter-trpc
Description: Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
Author: nordowl
Latest version: 0.7.3

# @filenest/adapter-trpc

Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
npm package: @filenest/core
Description: Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
Author: nordowl
Latest version: 0.7.2

# @filenest/core

Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
npm package: @filenest/provider-cloudinary
Description: Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
Author: nordowl
Latest version: 0.7.2

# @filenest/provider-cloudinary

Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
npm package: @filenest/provider-uploadthing
Description: Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
Author: nordowl
Latest version: 0.7.2

# @filenest/provider-uploadthing

Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
npm package: @filenest/react
Description: Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
Author: nordowl
Latest version: 0.7.3

# @filenest/react

Full documentation available at [https://filenest-docs.vercel.app/](https://filenest-docs.vercel.app/)
npm package: @fileops/swmm-node
Description: TypeScript package for performing data operations on EPA-SWMM and swmmReact files.
Author: Issac Gardner
Latest version: 0.0.88

# swmmNode info

swmmNode is a TypeScript package for performing operations on EPA-SWMM files via Node.js or through websites built with swmmReact, swmmVue or swmmLink.

## How to link to your project

Use npm to install swmmNode (swmm-node) into your projects:
```
npm install @fileops/swmm-node
```
## Core functions

Some of the core elements of swmmNode are detailed below:

### swmmOut

swmmOut(ArrayBuffer): Creates an interactive class instance for .out files.

### swmmDat

swmmDat(string): Creates an interactive class instance for .dat files.

#### getHeader

Returns the header for the file.

#### findStorms

Searches the .dat file for storm patterns, returns results in Unix-Timestamp format.

#### findStormsPretty

Searches the .dat file for storm patterns, returns results in human-readable format (MM/DD/YYYY hh:mm:ss)

#### subGage

Gets the data for just one gage from a .dat file.

#### mergeGages

Merges gage info from another .dat file or object into the current .dat object.

#### subRange

Gets the data for a specific date range from the .dat object/file

#### stringify

Translates the current .dat file into a string for writing into a new .dat file.
npm package: @fileops/swmm-wasm
Description: Node package for executing swmm in a node environment
Author: Issac Gardner
Latest version: 0.0.5

# swmm-wasm info

swmm-wasm is a JavaScript package for performing operations on EPA-SWMM files via Node.js.

## How to link to your project

Use npm to install swmmWASM (swmm-wasm) into your projects:
```
npm install @fileops/swmm-wasm
```
npm package: @fileops/swmm-wasm-test
Description: TEST Node package for executing swmm in a node environment
Author: Issac Gardner
Latest version: 0.0.1

# swmm-wasm info

swmm-wasm is a JavaScript package for performing operations on EPA-SWMM files via Node.js.

## How to link to your project

Use npm to install swmmWASM (swmm-wasm) into your projects:
```
npm install @fileops/swmm-wasm
```
npm package: @fileops/swmm-wasm-web
Description: npm package for running swmm models in-browser
Author: Issac Gardner
Latest version: 0.0.4

# swmm-wasm info

swmm-wasm-web is a JavaScript package for performing operations on EPA-SWMM files websites built with swmmNode, swmmReact, or swmm-js.

## How to link to your project

Use npm to install swmmWASM-web (swmm-wasm-web) into your projects:
```
npm install @fileops/swmm-wasm-web
```
npm package: @filerobot-strapi/content-plugin
Description: Scaleflex DAM normalizes, resizes, optimizes and distributes your images rocket fast around the world.
Author: Scaleflex
Latest version: 2.0.3

# Scaleflex DAM plugin for Strapi v5

## Intro

Strapi v5.x.x

To know which versions of Node goes with which versions of Strapi, refer to here: https://github.com/strapi/strapi/releases

If you are not familiar with using the Strapi CMS, here are some quick tutorials:

Strapi v5: https://docs.strapi.io/cms/quick-start

## Install Strapi CMS

You can run, for example: `npx create-strapi-app@5.33.0`

## Plugin

https://www.npmjs.com/package/@filerobot-strapi/content-plugin

At this point, assuming that you already have a Strapi CMS installed and set up, and that you already have a super-admin user configured. It's time to install the Scaleflex DAM plugin for Strapi v5:

`npm install @filerobot-strapi/content-plugin`

(Use `npm install @filerobot-strapi/content-plugin --legacy-peer-deps` if you need to)

## Run

`yarn build`

`yarn start`

## Configure

Click "Scaleflex DAM" on the left vertical menu (under the plugins section)

![image](https://raw.githubusercontent.com/scaleflex/strapi-plugin-filerobot/v5/docs/1.png)

- **CNAME** should be without `https://`
- **Folder** can have a preceding `/` , but it's not necessary. So both `/folder_name` and `folder_name` are ok

## Usage

Now you can make use of the "Synchronization Status" and "Trigger Synchronization" buttons.

### Media Tab

![image](https://raw.githubusercontent.com/scaleflex/strapi-plugin-filerobot/v5/docs/2.png)

The **Media Tab** keeps a "log" of all your media assets.

Indeed, there are 3 local images that are yet to be synchronized to the **Scaleflex DAM**.

And there are indeed 4 remote images on the **Scaleflex DAM** that are yet to be synchronized down to the Strapi CMS.

### Trigger Synchronization

![image](https://raw.githubusercontent.com/scaleflex/strapi-plugin-filerobot/v5/docs/3.png)

Afterwards, the logs will be updated:

![image](https://raw.githubusercontent.com/scaleflex/strapi-plugin-filerobot/v5/docs/4.png)

## Asset Manager Tab

When you **Upload**, the image will be uploaded to the **Scaleflex DAM**. Also, the same image (with **Scaleflex DAM** URL) will go into the Strapi CMS:

![image](https://raw.githubusercontent.com/scaleflex/strapi-plugin-filerobot/v5/docs/5.png)

If you know that `city.jpg` only exists on the **Scaleflex DAM** (ie: haven't yet been synchronized down to the Strapi CMS), then you can check it and press "**Add to Strapi**":

![image](https://raw.githubusercontent.com/scaleflex/strapi-plugin-filerobot/v5/docs/6.png)
npm package: @filerobot/audio-player
Description: Audio player integration with Filerobot
Latest version: 1.0.1-v3alpha.3

# `@filerobot/audio-player`

The audio-player plugin provides audio player with controls to audio files on Filerobot.
> Note: The supported playback audio formats are `audio/mpeg, audio/ogg, audio/wav`

## Usage

### From NPM
The plugin is on NPM as `@filerobot/audio-player`

```bash
npm install --save @filerobot/audio-player
```

then

```js
import AudioPlayer from '@filerobot/audio-player
...
...
...
filerobot.use(AudioPlayer)
```

### From CDN

The plugin from CDN is found inside `Filerobot` global object `Filerobot.AudioPlayer`

```js
const AudioPlayer = window.Filerobot.AudioPlayer
...
...
...
filerobot.use(AudioPlayer)
```
npm package: @filerobot/core
Description: Core module for the extensible JavaScript file upload widget with support for drag&drop, resumable uploads, previews, restrictions, file processing/encoding, remote providers like Instagram, Dropbox, Google Drive, Box, One Drive, S3 and more.
Latest version: 3.114.5
Deprecated: Package no longer supported. Check https://www.npmjs.com/package/@scaleflex/widget-core for newer versions
npm package: @filerobot/image-annotator
Description: FilerobotImageEditor integration with filerobotFilerobot
Latest version: 1.8.1

# `@filerobot/image-annotator`

The image editor plugin provides different functionality for editing the image available in the widget, gives you the possibility to add watermark, text, shapes, edit image by filters, orientations...etc.

## Usage

### From NPM
The plugin is on NPM as `@filerobot/image-annotator`

```bash
npm install --save @filerobot/image-annotator
```

then

```js
import ImageAnnotator from '@filerobot/image-annotator'
...
...
...
filerobot.use(ImageAnnotator, optionsObject)
```

### From CDN

The plugin from CDN is found inside `Filerobot` global object `Filerobot.ImageAnnotator`

```js
const ImageAnnotator = window.Filerobot.ImageAnnotator
...
...
...
filerobot.use(ImageAnnotator, optionsObject)
```

### Plugin's styles are auto-loaded and integrated in plugin's js

## Options

#### `id: string` *(optional)*

*default*: `'ImageAnnotator'`

An unique identifier for the plugin to be indentified between the other plugins through it.

#### `locale: object` *(optional)*

*default:* default locales inside `lib/defaultLocale.js`.

Customizing some of the translations or the language's strings and replace the default locale.

Check the rest of the options available on [**filerobot-image-annotator**](https://github.com/scaleflex/filerobot-image-annotator)
npm package: @filerobot/locales
Description: Filerobot language packs
Latest version: 1.0.10

# @filerobot/locales

This package contains all the locales/languages possible to show Filerobot widget with.

## Usage

### From NPM
The plugin is on NPM as `@filerobot/explorer`

```bash
npm install --save @filerobot/core @filerobot/locales
```

then

```js
import Filerobot from '@filerobot/core';
import { FR as franceFrench } from '@filerobot/locales';
...
...
...
const filerobot = Filerobot({
  locale: franceFrench
})
```

### From CDN

The plugin from CDN is found inside `Filerobot` global object `Filerobot.locales`

```js
const locales = window.Filerobot.locales
...
...
...
const filerobot = Filerobot({
  locale: locales.FR
})
```

> Check [locale property](../@filerobot/core#locale-object-optional) of core for more details.

> locale/translation file naming convention (EN), EN = shortcut for language in big letters casing.

#### Available locales

- United states' English: `EN` compiled inside `/lib/EN.js`

- France's Français: `FR` compiled inside `/lib/FR.js`

For adding more translations/locales:

1. Copy (`EN.js`) file as it is almost contains the latest translation keys into same folder and rename the file with your translation naming convetnion ex. (`FR`).
2. Replace `EN` object with your the naming conveion of the file ex. (`FR`).
3. Replace the translated strings with desired language's translated strings.
4. Add `export { default as FR } from './FR'` inside `@filerobot/locales/src/index.js`.
5. Compile for being added in lib.

> Note: locales available in the package till now (English, Deutch, Espanish, French).
npm package: @filerobot/preupload-image-processor
Description: Filerobot preupload-image-processor module.
Latest version: 0.0.0-beta.46

# `@filerobot/preupload-image-processor`

A processor which applies some functionalities for the images before uploading process.

## Usage

### From NPM
The plugin is on NPM as `@filerobot/preupload-image-processor`

```
npm install --save @filerobot/preupload-image-processor
```

then

```
import PreUploadImageProcessor from '@filerobot/preupload-image-processor'
...
...
...
filerobot.use(PreUploadImageProcessor, optionsObject)
```

### From CDN

The plugin from CDN is found inside `Filerobot` global object `Filerobot.PreUploadImageProcessor`

```
const PreUploadImageProcessor = window.Filerobot.PreUploadImageProcessor
...
...
...
filerobot.use(PreUploadImageProcessor, optionsObject)
```

### Plugin's styles

```
import '@filerobot/core/dist/style.css'
import '@filerobot/preupload-image-processor/dist/style.css'
```

or if you prefer the minified version

```
import '@filerobot/core/dist/style.min.css'
import '@filerobot/preupload-image-processor/dist/style.min.css'
```

> The plugin's css file should be imported after the [Core's css file](../core/#modules-styles) for having the styles shown correctly.


## Options

#### `target: string` *(required)*

*default:* `null`

The selector or filerobot's plugin that would be used for mounting the informer into.

#### `id: string` *(optional)*

*default*: `'PreUploadImageProcessor'`

An unique identifier for the plugin to be indentified between the other plugins through it.

#### `processByDefault: boolean` *(optional)*

*default*: `false`

If `true` the process image before upload checkbox would be default checked in the uploading panel if there are any images selected, otherwise the checkbox won't be default un-checked.

#### `operations: ` *(optional)*
      
*default*: `null`

The operations to be available to the user as options to choose from which to apply on the images before uploading, till now the supported operations:
  - #### `resize` - (*object* - required): Show user inputs for the user to choose the width & height of resizing, with respecting the passed values in `width, height` properties which refers to the max. width & max. height respectively, *show following example*.

example,

```
{
  resize: {
    width: 2000, // max width the user could reach
    height: 2000 // max height the user could reach
  }
}
```

#### `locale: object` *(optional)*

*default:*

```
strings: {
  resizingImages: 'Resizing images....',
  doneResizing: 'Resizing step is done.',
  noBlob: 'Error while resizing, blob is not defined.',
  procecssImgsBeforeUpload: 'Process images before upload',
  operation: 'Operation',
  operationDescription: 'Operation that is being applied automatically before passing the image to uploading stage',
  resize: 'Resize',
  smartCrop: 'Smart Crop',
  faceDetection: 'Face Detection',
  width: 'Width (px)',
  height: 'Height (px)'
}
```

Customizing some of the translations or the language's strings and replace the default locale.
npm package: @files-drop/react-uploader
Description: UI Component library
Author: jackykwandesign
Latest version: 0.1.3

### Fantasktic Component Library

To install:

`yarn add @files-drop/react-uploader`

To update:

`yarn remove @files-drop/react-uploader` and 

`yarn add @files-drop/react-uploader`



or just
`yarn add @files-drop/react-uploader@`**_X.X.X_** , where **_X.X.X_** is the version number
npm package: @files-stack/client-core
Description: xterm server services for Node
Author: CDMBase LLC
Latest version: 0.0.56-19

# Client Core Package
Helper methods and interfaces that can be used by the client part of the packages 

What does it include:
---
    1. exported reducers
    2. exported actions
    3. exported graphql queries
    4. Typescript 2.0.0 => ES6
    5. unit testing with jest

Purpose:
---
    This package can be installable in front-end webserver

What's not included
---
    It does not have any client UI components such as React
    It does have configured Redux Store

Useful commands:
---
    npm run build       - build the library files
    npm run test        - run tests once
    npm run test:watch  - run tests in watchmode (Useful for development)
    
Files explained:
---
     src                         - directory is used for typescript code that is part of the project
        index.ts                 - Index file of the package. Consists of exported reducers and actions
        index.spec.ts            - Tests file for main
        actions                  - Contains Actions to transform the state tree
            index.ts             - References all the exported actions
        reducers                 - Contains reducers, pure function with (state, action) => state signature. 
            index.ts             - References all the exported reducers.
     package.json                - file is used to describe the library and packages that are required added under peer-dependencies section
     tsconfig.json               - configuration file for the library compilation
     webpack.config.js           - configuration file of the compilation automation process for the library
npm package: @files-stack/client-redux
Description: Files Redux consists of reducers and actions
Author: CDMBase LLC
Latest version: 0.0.56-18

# Redux Package
Redux npm package includes actions, action-types and reducers

  1. [TypeScript and Redux: getting started][article-1]
  2. [TypeScript and Redux: async actions][article-3]
  3. [TypeScript and Redux: unit testing with Jest][article-4]
  4. [Integrating TypeScript and redux-thunk][article-5]


What does it include:
---
    1. exported reducers
    2. exported actions
    3. exported graphql queries
    4. Typescript 2.0.0 => ES6
    5. unit testing with jest

Purpose:
---
This package can be installable in front-end webserver to use the reducers and actions.

The goal is to make a isolated and reusable module that is self-contained. In order to avoid name conflicts, following rules need to be abide.
1. MUST export a function call reducer()
2. MUST export its action creators as functions
3. MUST have action types in the form `@npm-module-or-app/ACTION_TYPE` eg. `@@files-stack/INCREMENT_COUNTER`
4. MUST have reducer in the form `npm-module-or-app/reducer_name` eg. `@files-stack/counter`

What's not included
---
- It does not have any client UI components such as React
- It does not configure Redux Store

Useful commands:
---
    npm run build       - build the library files
    npm run test        - run tests once
    npm run test:watch  - run tests in watchmode (Useful for development)
    
Files explained:
---
     src                         - directory is used for typescript code that is part of the project
        index.ts                 - Index file of the package. Consists of exported reducers and actions
        index.spec.ts            - Tests file for main
        actions                  - Contains Actions to transform the state tree
            index.ts             - References all the exported actions
        reducers                 - Contains reducers, pure function with (state, action) => state signature. 
            index.ts             - References all the exported reducers.
     package.json                - file is used to describe the library and packages that are required added under peer-dependencies section
     tsconfig.json               - configuration file for the library compilation
     webpack.config.js           - configuration file of the compilation automation process for the library
                 

[article-1]: https://rjzaworski.com/2016/08/getting-started-with-redux-and-typescript
[article-2]: https://rjzaworski.com/2016/08/typescript-redux-and-react
[article-3]: https://rjzaworski.com/2016/09/typescript-redux-async-actions
[article-4]: https://rjzaworski.com/2016/12/testing-typescript-with-jest
[article-5]: https://rjzaworski.com/2017/01/typescript-redux-thunk
npm package: @files-stack/graphql-schema
Description: Sample Schema Module
Author: CDMBase LLC
Latest version: 0.0.56-26

# @files-stack/graphql-schema
This package is intended to be used with [Apollo Server](http://docs.apollostack.com/apollo-server/tools.html) to provide an easy way to setup a GraphQL server and connect it to your database. Note that Apollo Server is not a depenedency of this package. 

Usage
---

Sample Schema exports four things: **database**, **resolvers**, **subscriptions** and **typeDefs**.


*resolvers*
Resolvers are functions that tell the server how to find and return the data for each field in a GraphQL query. The resolving functions simply call your Database Connectors by passing in parameters and return the Connectors result (usually a Promise).

After creating your Database and Connectors from Database, you can call the resolvers function by passing in the Connectors and your public application settings (since settings are stored in the application state). Building on the previous examples:

*typeDefs* is a GraphQL Schema based on the queries provided to it from database. With the schema, you can do things like Find Posts by post_type, get the Postmeta of a Post by the post_id, and so on.

*subscriptions* 
GraphQL subscriptions allow developers to introduce new levels of interactivity to their apps with near-realtime updates. You can keep your app updated to the latest changes (that you subscribe to) between different users:

*database*
The first part of Sample Schema is **database**. This class provides an easy connection to your database using some connection settings, explained below.


Files explained:
---
     src                         - directory is used for typescript code that is part of the project
        index.ts                 - Index file of the package. Consists of exported components and containers
        index.spec.ts            - Tests file for main
        modules                  - Fractal route for server-side application module splitting (schema definition, resolvers, subscription filters, database connectors )
     package.json                - file is used to describe the library and packages that are required added under peer-dependencies section
     tsconfig.json               - configuration file for the library compilation
     webpack.config.js           - configuration file of the compilation automation process for the library


Setup
---
`modules` directory consists of the sub directories based on the criteria for module splitting. Each sub-directory may have schema definition, resolvers, subscriptions, database

Schema definition files should have suffix as `.graphql` or `.graphqls`. Resolvers file should be named as `resolvers.ts` and subscriptions filter file as `subscriptions.ts`.

All the files under modules are automatically bundled when you run `npm run build`, so the above naming convention should be followed.

## Reference:
https://github.com/ramsaylanier/WordExpressSchema
npm package: @files-stack/schema
Description: Sample Schema Module
Author: CDMBase LLC
Latest version: 0.0.2

# @files-stack/schema
This package is intended to be used with [Apollo Server](http://docs.apollostack.com/apollo-server/tools.html) to provide an easy way to setup a GraphQL server and connect it to your database. Note that Apollo Server is not a depenedency of this package. 

Usage
---

Sample Schema exports four things: **database**, **resolvers**, **subscriptions** and **typeDefs**.


*resolvers*
Resolvers are functions that tell the server how to find and return the data for each field in a GraphQL query. The resolving functions simply call your Database Connectors by passing in parameters and return the Connectors result (usually a Promise).

After creating your Database and Connectors from Database, you can call the resolvers function by passing in the Connectors and your public application settings (since settings are stored in the application state). Building on the previous examples:

*typeDefs* is a GraphQL Schema based on the queries provided to it from database. With the schema, you can do things like Find Posts by post_type, get the Postmeta of a Post by the post_id, and so on.

*subscriptions* 
GraphQL subscriptions allow developers to introduce new levels of interactivity to their apps with near-realtime updates. You can keep your app updated to the latest changes (that you subscribe to) between different users:

*database*
The first part of Sample Schema is **database**. This class provides an easy connection to your database using some connection settings, explained below.


Files explained:
---
     src                         - directory is used for typescript code that is part of the project
        index.ts                 - Index file of the package. Consists of exported components and containers
        index.spec.ts            - Tests file for main
        modules                  - Fractal route for server-side application module splitting (schema definition, resolvers, subscription filters, database connectors )
     package.json                - file is used to describe the library and packages that are required added under peer-dependencies section
     tsconfig.json               - configuration file for the library compilation
     webpack.config.js           - configuration file of the compilation automation process for the library


Setup
---
`modules` directory consists of the sub directories based on the criteria for module splitting. Each sub-directory may have schema definition, resolvers, subscriptions, database

Schema definition files should have suffix as `.graphql` or `.graphqls`. Resolvers file should be named as `resolvers.ts` and subscriptions filter file as `subscriptions.ts`.

All the files under modules are automatically bundled when you run `npm run build`, so the above naming convention should be followed.

## Reference:
https://github.com/ramsaylanier/WordExpressSchema
npm package: @files-ui/core
Description: Base code for Files UI
Author: JinSSJ3
Latest version: 2.0.7

<p align="center">
<img src="https://user-images.githubusercontent.com/43678736/226257748-6ba2f8cf-59c5-40d1-a545-a388ddab0f68.png" width="150" height="150" alt="fui-logo"/>
</p>
<h1 align="center">Files ui - core</h1>

Base code for **Files UI** 


## Installation

@files-ui/react is available as an [npm package](https://www.npmjs.com/package/@files-ui/react).

```sh
// with npm
npm i @files-ui/core
```

```sh
// with yarn
yarn add @files-ui/core
```

## License

This project is licensed under the terms of the
[MIT license](/LICENSE).
npm package: @filesonfly/node-sdk
Description: NodeJS SDK for Files on Fly
Author: Files On Fly
Latest version: 0.1.6

# FilesOnFly Node.js SDK

[![Unit Tests](https://github.com/filesonfly/node-sdk/actions/workflows/unittests.js.yml/badge.svg)](https://github.com/filesonfly/node-sdk/actions/workflows/unittests.js.yml)

The `@filesonfly/node-sdk` is a Node.js client library for interacting with the [FilesOnFly](https://filesonfly.com) API, allowing you to easily upload, retrieve, and manage files in your Node.js applications.

## Features

- Authenticate and connect to the FilesOnFly API
- Upload files to the FilesOnFly storage
- Retrieve file information by file name or ID

## Installation

Install the SDK with npm:

```bash
npm install @filesonfly/node-sdk
```

Or with yarn:

```bash
yarn add @filesonfly/node-sdk
```

## Usage

### Initializing the SDK

First, require and initialize the `FilesOnFlySDK`:

```javascript
const FilesOnFlySDK = require('@filesonfly/node-sdk');

const fof = new FilesOnFlySDK('https://api.filesonfly.com');
```

### Connecting to the API

To use the SDK, you must first connect to the API with your authentication token:

```javascript
const authToken = 'your-auth-token';
await fof.connect(authToken);
```

### Uploading a File

Upload a file using the `sendFile` method:

```javascript
const fs = require('fs');

const fileName = 'example.png';
const fileBuffer = fs.readFileSync('/path/to/your/file.png');

await fof.sendFile(fileName, fileBuffer);
```

### Retrieving File Information

Get file information using the `getFile` method by file name or ID:

```javascript
// Get by file name
const fileInfoByName = await fof.getFile('example.png');

// Get by file ID
const fileInfoById = await fof.getFile(1);
```

## Error Handling

The SDK throws `FoF_Exception` errors when API requests fail or validation errors occur. Use try-catch blocks to handle these exceptions:

```javascript
try {
    await fof.sendFile('file_name', fileBuffer);
} catch (error) {
    if (error instanceof FoF_Exception) {
        console.error('FilesOnFly error:', error.message);
    } else {
        console.error('Unexpected error:', error);
    }
}
```

## Contributing

We welcome contributions to the `@filesonfly/node-sdk`. If you have suggestions or improvements, please fork the repository and submit a pull request.
npm package: @filesrocket/amazons3
Description: Filerocket service to manage files from Amazon S3
Author: Ivan Zaldivar
Latest version: 1.2.2

![Filesrocket](https://user-images.githubusercontent.com/64434514/185008388-b73e0f07-7d2f-441c-9fb8-cf2fd0dd8f49.png)

# Manage your files with any Cloud Storage Services

[**Filesrocket**](https://filesrocket.com/) is an package of [Node.js](https://nodejs.org/en/) that allows you to manage your files with any cloud storage service ([Local](https://filesrocket.com/services/local.html), [Cloudinary](https://filesrocket.com/services/cloudinary.html), [Amazon S3](https://filesrocket.com/services/amazon-s3.html)) through the use of strategies called [Services](https://filesrocket.com/overview/services.html)

## 📙 Documentation

The [Filesrocket Docs](https://filesrocket.com/) are packed with awesome stuff and tell you everything you need to know about using and configuring Filesrocket.
  
## 🚀 Getting started

You can start using **Filesrocket** in easy steps.

```bash
$ mkdir filesrocket-example
$ cd filesrocket-example
$ npm init -y && tsc --init
$ npm install express @filesrocket/core @filesrocket/local
$ npm install @types/express typescript ts-node -D
```

Create `src/index.ts` and copy following content.

1. Initialize app

```ts
import express from "express";

const app = express();

app.listen(3030, ()  => {
  console.log("App execute in port:3030");
});
```

2. Register the services you are going to use

```ts
import { Filesrocket } from "@filesrocket/core";
import { LocalService } from "@filesrocket/local";

// Initialize
const filesrocket = new Filesrocket();

// Config your service
const service = new LocalService({
  pagination: { default: 15, max: 50 },
  host: "http://localhost:3030",
  directory: "uploads"
});

// We register the service
filesrocket.register("local", service);
```

3. Register your endpoints.

```ts
const controller = filesrocket.controller("local");

// Create/Upload files.
app.post("/files", async (req,  res) => {
  const files = await controller.create(req, {});

  res.status(200).json(files);
})

// List files.
app.get("/files", async (req, res) => {
  const query = req.query;

  const files = await controller.list(query);

  res.status(200).json(files);
})

// Remove files.
app.delete("/files", async (req, res) => {
  const query = req.query;
  const { id } = query;

  const files = await controller.remove(id, query)

  res.status(200).json(files)
})
```

Expose static files.

```ts
app.use("/uploads", express.static(path.resolve("uploads")));
```

We run the server

```bash
npx ts-node src/index.ts
```

With this simple example you can interact with the files, click on the following link: [`http://localhost:3030/files`](http://localhost:3030/files)

## ❤️ Stay in touch

- 🐦 Twitter - [Ivan Zaldivar](https://twitter.com/thebug404)
- 🌐 Website - [filesrocket.com](https://filesrocket.com/)
- 📝 Blog - [thebug.hashnode.dev](https://thebug.hashnode.dev/)

## ⚖️ Licence

Filesrocket is [MIT Licenced](LICENCE)
npm package: @filesrocket/cloudinary
Description: Filesrocket service that manage the files of the Cloudinary
Author: Ivan Zaldivar
Latest version: 1.2.2

![Filesrocket](https://user-images.githubusercontent.com/64434514/185008388-b73e0f07-7d2f-441c-9fb8-cf2fd0dd8f49.png)

# Manage your files with any Cloud Storage Services

[**Filesrocket**](https://filesrocket.com/) is an package of [Node.js](https://nodejs.org/en/) that allows you to manage your files with any cloud storage service ([Local](https://filesrocket.com/services/local.html), [Cloudinary](https://filesrocket.com/services/cloudinary.html), [Amazon S3](https://filesrocket.com/services/amazon-s3.html)) through the use of strategies called [Services](https://filesrocket.com/overview/services.html)

## 📙 Documentation

The [Filesrocket Docs](https://filesrocket.com/) are packed with awesome stuff and tell you everything you need to know about using and configuring Filesrocket.
  
## 🚀 Getting started

You can start using **Filesrocket** in easy steps.

```bash
$ mkdir filesrocket-example
$ cd filesrocket-example
$ npm init -y && tsc --init
$ npm install express @filesrocket/core @filesrocket/local
$ npm install @types/express typescript ts-node -D
```

Create `src/index.ts` and copy following content.

1. Initialize app

```ts
import express from "express";

const app = express();

app.listen(3030, ()  => {
  console.log("App execute in port:3030");
});
```

2. Register the services you are going to use

```ts
import { Filesrocket } from "@filesrocket/core";
import { LocalService } from "@filesrocket/local";

// Initialize
const filesrocket = new Filesrocket();

// Config your service
const service = new LocalService({
  pagination: { default: 15, max: 50 },
  host: "http://localhost:3030",
  directory: "uploads"
});

// We register the service
filesrocket.register("local", service);
```

3. Register your endpoints.

```ts
const controller = filesrocket.controller("local");

// Create/Upload files.
app.post("/files", async (req,  res) => {
  const files = await controller.create(req, {});

  res.status(200).json(files);
})

// List files.
app.get("/files", async (req, res) => {
  const query = req.query;

  const files = await controller.list(query);

  res.status(200).json(files);
})

// Remove files.
app.delete("/files", async (req, res) => {
  const query = req.query;
  const { id } = query;

  const files = await controller.remove(id, query)

  res.status(200).json(files)
})
```

Expose static files.

```ts
app.use("/uploads", express.static(path.resolve("uploads")));
```

We run the server

```bash
npx ts-node src/index.ts
```

With this simple example you can interact with the files, click on the following link: [`http://localhost:3030/files`](http://localhost:3030/files)

## ❤️ Stay in touch

- 🐦 Twitter - [Ivan Zaldivar](https://twitter.com/thebug404)
- 🌐 Website - [filesrocket.com](https://filesrocket.com/)
- 📝 Blog - [thebug.hashnode.dev](https://thebug.hashnode.dev/)

## ⚖️ Licence

Filesrocket is [MIT Licenced](LICENCE)
npm package: @filesrocket/core
Description: Manage your files with any cloud storage service (Clodinary, Amazon S3).
Author: Ivan Zaldivar
Latest version: 1.2.2

![Filesrocket](https://user-images.githubusercontent.com/64434514/185008388-b73e0f07-7d2f-441c-9fb8-cf2fd0dd8f49.png)

# Manage your files with any Cloud Storage Services

[**Filesrocket**](https://filesrocket.com/) is an package of [Node.js](https://nodejs.org/en/) that allows you to manage your files with any cloud storage service ([Local](https://filesrocket.com/services/local.html), [Cloudinary](https://filesrocket.com/services/cloudinary.html), [Amazon S3](https://filesrocket.com/services/amazon-s3.html)) through the use of strategies called [Services](https://filesrocket.com/overview/services.html)

## 📙 Documentation

The [Filesrocket Docs](https://filesrocket.com/) are packed with awesome stuff and tell you everything you need to know about using and configuring Filesrocket.
  
## 🚀 Getting started

You can start using **Filesrocket** in easy steps.

```bash
$ mkdir filesrocket-example
$ cd filesrocket-example
$ npm init -y && tsc --init
$ npm install express @filesrocket/core @filesrocket/local
$ npm install @types/express typescript ts-node -D
```

Create `src/index.ts` and copy following content.

1. Initialize app

```ts
import express from "express";

const app = express();

app.listen(3030, ()  => {
  console.log("App execute in port:3030");
});
```

2. Register the services you are going to use

```ts
import { Filesrocket } from "@filesrocket/core";
import { LocalService } from "@filesrocket/local";

// Initialize
const filesrocket = new Filesrocket();

// Config your service
const service = new LocalService({
  pagination: { default: 15, max: 50 },
  host: "http://localhost:3030",
  directory: "uploads"
});

// We register the service
filesrocket.register("local", service);
```

3. Register your endpoints.

```ts
const controller = filesrocket.controller("local");

// Create/Upload files.
app.post("/files", async (req,  res) => {
  const files = await controller.create(req, {});

  res.status(200).json(files);
})

// List files.
app.get("/files", async (req, res) => {
  const query = req.query;

  const files = await controller.list(query);

  res.status(200).json(files);
})

// Remove files.
app.delete("/files", async (req, res) => {
  const query = req.query;
  const { id } = query;

  const files = await controller.remove(id, query)

  res.status(200).json(files)
})
```

Expose static files.

```ts
app.use("/uploads", express.static(path.resolve("uploads")));
```

We run the server

```bash
npx ts-node src/index.ts
```

With this simple example you can interact with the files, click on the following link: [`http://localhost:3030/files`](http://localhost:3030/files)

## ❤️ Stay in touch

- 🐦 Twitter - [Ivan Zaldivar](https://twitter.com/thebug404)
- 🌐 Website - [filesrocket.com](https://filesrocket.com/)
- 📝 Blog - [thebug.hashnode.dev](https://thebug.hashnode.dev/)

## ⚖️ Licence

Filesrocket is [MIT Licenced](LICENCE)
npm package: @filesrocket/local
Description: Filesrocket service that manages your files locally
Author: Ivan Zaldivar
Latest version: 1.2.2

![Filesrocket](https://user-images.githubusercontent.com/64434514/185008388-b73e0f07-7d2f-441c-9fb8-cf2fd0dd8f49.png)

# Manage your files with any Cloud Storage Services

[**Filesrocket**](https://filesrocket.com/) is an package of [Node.js](https://nodejs.org/en/) that allows you to manage your files with any cloud storage service ([Local](https://filesrocket.com/services/local.html), [Cloudinary](https://filesrocket.com/services/cloudinary.html), [Amazon S3](https://filesrocket.com/services/amazon-s3.html)) through the use of strategies called [Services](https://filesrocket.com/overview/services.html)

## 📙 Documentation

The [Filesrocket Docs](https://filesrocket.com/) are packed with awesome stuff and tell you everything you need to know about using and configuring Filesrocket.
  
## 🚀 Getting started

You can start using **Filesrocket** in easy steps.

```bash
$ mkdir filesrocket-example
$ cd filesrocket-example
$ npm init -y && tsc --init
$ npm install express @filesrocket/core @filesrocket/local
$ npm install @types/express typescript ts-node -D
```

Create `src/index.ts` and copy following content.

1. Initialize app

```ts
import express from "express";

const app = express();

app.listen(3030, ()  => {
  console.log("App execute in port:3030");
});
```

2. Register the services you are going to use

```ts
import { Filesrocket } from "@filesrocket/core";
import { LocalService } from "@filesrocket/local";

// Initialize
const filesrocket = new Filesrocket();

// Config your service
const service = new LocalService({
  pagination: { default: 15, max: 50 },
  host: "http://localhost:3030",
  directory: "uploads"
});

// We register the service
filesrocket.register("local", service);
```

3. Register your endpoints.

```ts
const controller = filesrocket.controller("local");

// Create/Upload files.
app.post("/files", async (req,  res) => {
  const files = await controller.create(req, {});

  res.status(200).json(files);
})

// List files.
app.get("/files", async (req, res) => {
  const query = req.query;

  const files = await controller.list(query);

  res.status(200).json(files);
})

// Remove files.
app.delete("/files", async (req, res) => {
  const query = req.query;
  const { id } = query;

  const files = await controller.remove(id, query)

  res.status(200).json(files)
})
```

Expose static files.

```ts
app.use("/uploads", express.static(path.resolve("uploads")));
```

We run the server

```bash
npx ts-node src/index.ts
```

With this simple example you can interact with the files, click on the following link: [`http://localhost:3030/files`](http://localhost:3030/files)

## ❤️ Stay in touch

- 🐦 Twitter - [Ivan Zaldivar](https://twitter.com/thebug404)
- 🌐 Website - [filesrocket.com](https://filesrocket.com/)
- 📝 Blog - [thebug.hashnode.dev](https://thebug.hashnode.dev/)

## ⚖️ Licence

Filesrocket is [MIT Licenced](LICENCE)