DEV Community

ANWAAR UL HAQUE ASRARI
ANWAAR UL HAQUE ASRARI

Posted on

πŸš€ Introducing @utho-community/object-storage β€” A Simple, Secure Object Storage Utility for Node.js

Hey everyone πŸ‘‹
I'm Anwaarul Haque, a Technical Lead and the creator of the Utho Community Plugins β€” a growing collection of open-source tools designed to make cloud development faster, safer, and developer-friendly.

Today, I’m excited to introduce one of our latest releases:

@utho-community/object-storage

A lightweight Node.js package that simplifies working with object storage services like AWS S3, DigitalOcean Spaces, and others β€” all through a unified API.

🌩️ Why I Built It

Every time I built a SaaS or infrastructure-based project, I found myself re-writing the same boilerplate for uploading, downloading, and deleting files from cloud storage.
Each provider has slightly different SDKs, configs, and quirks β€” and switching from AWS to another provider meant updating code everywhere.

So I built @utho-community/object-storage to solve this problem once and for all.
It abstracts away the provider complexity, giving developers a single, simple interface for managing files.

βš™οΈ Installation

You can install it directly from npm:

npm install @utho-community/object-storage
Enter fullscreen mode Exit fullscreen mode

or with yarn:

yarn add @utho-community/object-storage
Enter fullscreen mode Exit fullscreen mode

πŸš€ Quick Start Example

Here’s how easy it is to upload and retrieve a file using this package:


import { UthoObjectStorage } from '@utho-community/object-storage';

// Create client with Bearer token
const client = new UthoObjectStorage({
  token: 'your-bearer-token' // Get from Utho dashboard
});

// Upload a file
const fileContent = Buffer.from('Hello, World!', 'utf-8');
await client.uploadFile('innoida', 'my-bucket', fileContent, 'hello.txt');

// Upload file to a folder
await client.uploadFile('innoida', 'my-bucket', fileContent, 'documents/hello.txt');
Enter fullscreen mode Exit fullscreen mode

No need to learn each provider’s unique SDK β€” the same code works for AWS, DO Spaces, Wasabi, and more (with simple config tweaks).

🧩 Key Features

βœ… Unified API – Works across AWS, DigitalOcean Spaces, and compatible S3 systems
βœ… Secure Configuration – Environment-safe setup (no hardcoded secrets)
βœ… Lightweight & Fast – Zero unnecessary dependencies
βœ… Async Support – Fully promise-based
βœ… Easily Extendable – Add your custom storage provider with minimal code

🧠 Real-World Use Case

Let’s say you’re building a SaaS app or eCommerce platform and you want to:

Upload user profile photos

Store invoices or receipts

Save marketing images or documents

With this library, you can set up your entire storage system in under 5 minutes, regardless of your backend framework (Express, Nest.js, or Serverless Functions).

πŸ—οΈ Project Vision: The Utho Community Ecosystem

@utho-community/object-storage is part of the Utho Community Plugin Suite, an open-source ecosystem I’m building to accelerate SaaS and cloud development.

The goal is to create a reliable, developer-first toolkit for building scalable platforms β€” faster.

πŸ’ͺ Built for Developers, by a Developer

I designed this package with a strong focus on developer productivity and clarity.
You don’t need to be an AWS expert β€” just configure once and ship faster.

If you find this helpful, I’d love your support:

⭐ Star the repo on GitHub

🧩 Contribute ideas or improvements

πŸ’¬ Share feedback in the comments below

πŸ”— Links

πŸ“¦ NPM: @utho-community/object-storage

πŸ’» GitHub: https://github.com/utho-community/object-storage

❀️ Closing Thoughts

This is just the beginning of the Utho Community Plugin series.
I’m currently building a full ecosystem for developers who want simplicity and performance without vendor lock-in.

If you’re a developer working with Node.js or SaaS infrastructure, I’d love for you to try this package, give feedback, or even join the Utho open-source journey πŸš€

Author:
πŸ§‘β€πŸ’» Anwaarul Haque
Technical Lead | Creator of Utho Community Plugins

Top comments (0)