Skip to content

code3-dev/native-ig

Repository files navigation

Native IG

Instagram Logo

License: MIT Next.js TypeScript Upstash

Free No Login Required High Quality

A modern, lightning-fast web application for downloading Instagram Reels with ease and simplicity. No registration required, just paste and download! 🚀

✨ Features

  • 🎯 Simple & Intuitive: Clean interface for the best user experience
  • 🚀 Fast & Free: Download Instagram reels quickly without any cost
  • 👤 No Registration: No account needed, just paste the link and download
  • 📹 High Quality: Get reels in their original quality
  • 🔒 Secure: Your data is never stored or shared
  • 🌐 API Available: Integrate with your own applications

📝 Description

Native IG is your go-to solution for downloading Instagram videos hassle-free. Simply paste the URL of any public Instagram post and get the video file in MP4 format. We also provide a robust API that you can integrate into your own applications, returning JSON responses with video URLs and metadata.

Note: Instagram stories are currently not supported.

🚀 Getting Started

Prerequisites

  • Node.js 16 or higher
  • npm or yarn

Installation

1. Clone the repository:

git clone https://github.com/code3-dev/native-ig.git

2. Install dependencies:

cd native-ig
npm install

3. Run the application:

# Development mode
npm run dev

# Production build
npm run build

# Start production server
npm run start

🔌 API Reference

Endpoint: /api/video

Request

`GET /api/video?postUrl={POST_URL}`

Parameters:

  • postUrl : Instagram Post or Reel link (required)

Example Request

curl -i "http://localhost:3000/api/video?postUrl=https://www.instagram.com/p/xxxxxx"

Example Response

{
  "status": "success",
  "data": {
    "filename": "native-ig-1712666263.mp4",
    "width": "800",
    "height": "800",
    "videoUrl": "https://scontent.cdninstagram.com/..."
  }
}

⚡ Rate Limiting with Upstash

To protect our service and ensure optimal performance, we've implemented rate limiting using Upstash Redis. Here's how to set it up:

  1. Create an account on upstash.com
  2. Create a new Redis database
  3. Navigate to the REST API section
  4. Copy the provided environment variables
  5. Create .env.local in the project root
  6. Configure your environment:
USE_UPSTASH="true"
UPSTASH_REDIS_REST_URL="YOUR-UPSTASH-URL"
UPSTASH_REDIS_REST_TOKEN="YOUR-UPSTASH-TOKEN"

Rate limit configurations can be found in src/features/ratelimit/constants.ts IP-based rate limiting can be customized in src/middleware.ts

📞 Support

For support, please:

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


Made with ❤️ by Hossein Pira

Follow on GitHub Follow on Instagram

About

Modern Application for downloading instagram videos build with Next.js that actually works with no problem.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published