DEV Community

Cover image for Stop Wasting 30 Minutes Configuring S3: Add Cloud File Storage to Your App in 5 Minutes (Free, No Credit Card Needed)
Muhammad Tukur Isma'il
Muhammad Tukur Isma'il

Posted on

Stop Wasting 30 Minutes Configuring S3: Add Cloud File Storage to Your App in 5 Minutes (Free, No Credit Card Needed)

​The Frustration Every Developer Knows
​We’ve all been there: You build a clean React, Next.js, or Node.js application. Everything is smooth until you need one basic feature: allowing users to upload a profile picture or document.
​Suddenly, you're dragged into:
​Configuring complex AWS IAM roles, policies, and bucket CORS rules.
​Entering credit card details just to test a small side project.
​Writing dozens of lines of SDK boilerplate code just to upload a single file.
​What if you could set up cloud object storage, get your API credentials, and upload files from your app in under 5 minutes—100% Free with zero credit card required?
​In this guide, we’ll do exactly that using Najumi Storage and the official @najumi/storage Node.js SDK.
​What is Najumi Storage?
​Najumi Storage (https://storage.najumitech.com) is a developer-first object storage platform designed to eliminate cloud infrastructure complexity.
​It gives you:
​Instant Free Plan: Start testing immediately without entering credit card details.
​Isolated Buckets: Secure, isolated storage environments with dedicated credentials.
​Clean Developer SDK: Simple methods like upload(), download(), and stats() that just work out of the box.
​Step 1: Get Your Free Credentials (2 Minutes)
​Go to storage.najumitech.com and create your free account.
​Click Create Bucket to spin up your isolated storage bucket.
​Grab your three bucket credentials from the dashboard:
​bucketId
​accessKey
​secretKey
​(No credit card required. Your free plan is activated instantly.)
​Step 2: Install the SDK (30 Seconds)
​In your Node.js backend or serverless application, install the official package via npm:
npm install @najumi/storage
Step 3: Connect and Upload in 5 Lines of Code (2 Minutes)
​Create your upload script or route handler (e.g., upload.js):const NajumiStorage = require('@najumi/storage');

// 1. Initialize the client
const storage = new NajumiStorage({
baseUrl: 'https://storage-api.najumitech.com',
bucketId: process.env.NAJUMI_BUCKET_ID,
accessKey: process.env.NAJUMI_ACCESS_KEY,
secretKey: process.env.NAJUMI_SECRET_KEY,
});

// 2. Upload a file directly from your app
async function handleFileUpload() {
try {
const response = await storage.upload('./user-avatar.png', 'avatars');
console.log('File Uploaded Successfully!', response);
} catch (error) {
console.error('Upload error:', error);
}
}

handleFileUpload();
That’s literally it. No IAM role configurations. No CORS headaches. Just clean, working cloud storage in your app.
​Step 4: Fetch File Stats and Downloads (Bonus)
​Want to see how much storage your app is consuming or retrieve stored objects? The SDK handles that natively:
​Retrieve Bucket Analytics:async function checkStats() {
const stats = await storage.stats();
console.log('Total Storage Used:', stats.totalStorageUsed);
console.log('Total Files:', stats.totalFiles);
}
Download / Serve Files to Users:async function getFile() {
await storage.download('NS_FILE_SHIELD_ID', './downloads/avatar.png');
}
Why Give Najumi Storage a Try?
​Zero Friction: Perfect for side projects, hackathons, or production applications where speed matters.
​Developer-First Pricing: A generous free plan so you can build and test without getting unexpected cloud bills.
​Enterprise Security: Built-in bucket-level isolation, access key rotation, and encrypted transfers.
​Wrap Up
​Stop letting cloud configuration slow down your building momentum.
​Head over to storage.najumitech.com, grab your free bucket, and add file storage to your app today.
​Have questions or feedback? Drop a comment below or join the discussion—I’d love to see what you build with it! 🚀

Top comments (1)

Collapse
 
tmismail profile image
Muhammad Tukur Isma'il •

Hey everyone! 👋

I'm the Founder & CEO at Najumi Tech Ltd. We built Najumi Storage specifically to solve the frustration of dealing with complex IAM rules, CORS headaches, and mandatory credit card setup when all you want to do is upload/manage files in your app.

If you give @najumi/storage a try on your side project, I'd love to hear your feedback!

What cloud storage frustrations do you usually face when building web/mobile apps? Drop your thoughts below! 🚀