Manage files using minio as file storage and mongodb for metadata


Keywords
Mongo, MinIO, Storage, File, Hapiness, Framework, NodeJS, Node, HTTP, API, REST, Streams, Async, Decorator, RxJS, Rx, ReactiveX, Observable, Observer, Module, ES2015, ES2016, ES2017, ES6, ES7, ES8, Typescript
License
NTP
Install
npm install @hapiness/mingo@2.3.0

Documentation

Hapiness

mingo module

This module helps you manage files with minio as file storage and mongodb for metadata.

It uses @hapiness/minio module and @hapiness/mongodb module.

Table of contents

Back to top

Usage

In your service:

@Injectable()
class MyService {

    constructor(private _mingoService) {}

    uploadFile(...) {
        this._mingoService.fromBucket('my_bucket').createFromStream(input, filename, 'image/jpeg', metadata);
    }
}

Change History

  • v2.0.0 (2019-02-15)
    • Breaking Change: Add bucket name in the file document
  • v1.4.0 (2019-02-14 🌹)
    • Added a new repository layer
    • Implemented a basic retry strategy for compatibility with comsodb error 429. (No impact on mongodb)
    • Added a new optional config option db.maxRetryAttempts: Number to determine max number of retry on cosmo retry strategy. Default is 9.
  • v1.3.0 (2019-01-30)
    • Update to @hapiness/core 1.6.x
    • Update to @hapiness/minio 2.0.1
  • v1.2.0 (2018-04-25)
    • Update to @hapiness/mongo 2.x
  • v1.1.2 (2018-02-14)
    • MingoModel now have an id exposed.
    • Fix when calling the toJson method but value returned by mongo is null.
  • v1.1.1 (2018-02-13)
    • Fix returned object, now doesn't include mongoose metadata
  • v1.1.0 (2018-01-30)
    • Update mingo model
    • Minor code updates
  • v1.0.0 (2018-01-18)
    • First release

Back to top

Maintainers

tadaweb
Julien Fauville Antoine Gomez Sébastien Ritz Nicolas Jessel Florent Bennani

Back to top

License

Copyright (c) 2017 Hapiness Licensed under the MIT license.

Back to top