Skip to content

SuperSection/Clipnetic-AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Clipnetic AI

AI Podcast Clipper SaaS

Clipnetic-AI is an end-to-end SaaS platform that transforms long-form podcast videos into viral short-form clips optimized for platforms like YouTube Shorts and TikTok. Powered by cutting-edge AI models, the app automatically transcribes content, detects high-engagement segments, and intelligently crops the clip to focus on the active speaker.

Basic Workflow of the Application

basic-workflow


Tech Stack

  • Frontend: Next.js 15, ShadCN UI, Tailwind CSS
  • AI/Backend: Python, Gemini AI model, Modal (serverless GPU)
  • Queue System: Inngest for background processing
  • Auth: NextAuth.js with JWT & credential providers
  • Cloud: AWS S3, ECR, EKS with ALB Ingress Controller
  • Payments: Razorpay integration
  • Database: Prisma ORM with Neon PostgreSQL

Features

  • 🎬 Auto-detection of viral moments in podcasts (stories, questions, etc.)
  • πŸ”Š Automatically added subtitles on clips
  • πŸ“ Transcription with m-bain/whisperX
  • 🎯 Active speaker detection for video cropping with Junhua-Liao/LR-ASD
  • πŸ“± Clips optimized for vertical platforms (TikTok, YouTube Shorts)
  • 🎞️ GPU-accelerated video rendering with FFMPEGCV
  • 🧠 LLM-powered viral moment identification with Gemini 2.5 Pro
  • πŸ“Š Queue system with Inngest for handling user load
  • πŸ’³ Credit-based system
  • πŸ’° Razorpay integration for credit pack purchases
  • πŸ‘€ User authentication system
  • πŸ“± Responsive Next.js web interface
  • πŸŽ›οΈ Dashboard to upload podcasts and see clips
  • ⏱️ Inngest for handling long-running processes
  • ⚑ Serverless GPU processing with Modal
  • 🌐 FastAPI endpoint for podcast processing
  • 🎨 Modern UI with Tailwind CSS & Shadcn UI

FFmpeg – media converter

To crop a video, use the following command:

ffmpeg -ss 00:14:00 -to 00:20:00 -i podcast.mp4 -c copy podcast6min.mp4

AWS Setup

Setup S3 Bucket

  • Create a new S3 bucket from AWS Console

  • CORS configuration for S3 bucket

    [
        {
            "AllowedHeaders": [
                "Content-Type",
                "Content-Length",
                "Authorization"
            ],
            "AllowedMethods": [
                "PUT"
            ],
            "AllowedOrigins": [
                "*"
            ],
            "ExposeHeaders": [
                "ETag"
            ],
            "MaxAgeSeconds": 3600
        }
    ]
  • You can create a new folder (/test1) in that bucket and upload an example video file.

Setup IAM User

  • Create a new User from IAM Dashboard

  • Provide User name and then Next

  • Attach policies directly > Create policy > Specify permissions in JSON

  • IAM user policy to upload, download and list bucket items:

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "s3:ListBucket"
                ],
                "Resource": "[S3 ARN here]"
            },
            {
                "Effect": "Allow",
                "Action": [
                    "s3:GetObject",
                    "s3:PutObject"
                ],
                "Resource": "[S3 ARN here]/*"
            }
        ]
    }
  • Refresh and search it, add that policy to the new User

Create Access Key

  • Select that newly created IAM User > Security and Credentials
  • Create access key
  • Select "Application running outside AWS"
  • Copy the "Access key" and "Secret access key"
  • Set those two as new secret in Modal
    • AWS_ACCESS_KEY_ID
    • AWS_SECRET_ACCESS_KEY

Setup the Project Locally

Follow these steps to install and set up the project.

Clone the Repository

git clone --recurse-submodules https://github.com/SuperSection/Clipnetic-AI.git

Install Python

Download and install Python if not already installed. Refer to the Official Python Download page for guidance on installation.

Create a virtual environment with Python 3.12. You can use pyenv or pyenv-win to set specific Python version while creating a .venv


Backend Setup

  1. Navigate to backend folder:

    cd clipnetic-ai-backend
  2. Install dependencies:

    pip install -r requirements.txt
  3. Clone the LR-ASD repo into the backend folder, and rename the folder as asd:

    git clone https://github.com/Junhua-Liao/LR-ASD.git asd
  4. Modal setup:

    modal setup
  5. Run on Modal:

    modal run main.py
  6. Deploy backend:

    modal deploy main.py

Frontend Setup

Install dependencies:

cd clipnetic-ai-frontend
npm i

Run:

npm run dev

Inngest Queue

Run the local queue development server with Inngest:

cd clipnetic-ai-frontend
npm run inngest-dev

Access Inngest Development UI on: http://localhost:8288

Inngest Cloud

Refer to inngest cloud and follow ther steps to setup function and sync app.


Razorpay – Payment Gateway

Refer to Razorpay Node.js Integration Docs


CI/CD Pipeline Automation

Overview of what I implemented:

  • GitHub Actions with self-hosted runners
  • Multi-stage pipeline: Lint β†’ Test β†’ Security β†’ Build β†’ Deploy
  • SonarQube for code quality analysis
  • Trivy for vulnerability scanning
  • Docker containerization with multi-stage builds
  • ECR for container registry
  • EKS deployment with Kubernetes manifests
  • AWS Load Balancer Controller for ingress
  • Automated secret management in K8s
  • Slack notifications for deployment status

Author

Reference

About

AI-powered SaaS to turn long podcasts into viral short clips

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •