Skip to content

An AI tool to quicky create short videos or analyze videos, powered by Gemini.

Notifications You must be signed in to change notification settings

ayushpaultirkey/my-content-creator

Repository files navigation

My Content Creator

My Content Creator is a AI web application to quickly generate short videos and analyze youtube videos and channel, powered by Google Gemini.

Features

  • Generate video using prompt.
  • Prompt based video editor along with manual editor.
  • Add image, audio and video along with narration and Google Drive import support.
  • Upload video to YouTube and Google Drive.
  • Review the YouTube channel or its video using Gemini.
  • Generate comments.

Table of Contents

Installation

Prerequisites

Steps

  1. Clone the repository:

    git clone https://github.com/ayushpaultirkey/my-content-creator.git
    cd my-content-creator
    
  2. Configure the .env file:

    NODE_ENV="development"
    PIXABAY_API="PIXABAY_KEY_HERE"
    GOOGLE_GEMINI_API="GEMINI_API_KEY_HERE"
    GOOGLE_APPLICATION_CREDENTIALS="src/secret/googlecloud-service.json"
    GOOGLE_OAUTH2_CLIENT="src/secret/googleoauth2-client.json"
    
  3. Place the credential and service files in the src/private folder:

    • src/private/googlecloud-service.json (from the Service Account section)
    • src/private/googleoauth2-client.json (from the OAuth 2.0 Client IDs section)
  4. Install npm modules:

    npm install
    

Running The Application

Windows

  1. Install the fonts: Navigate to /project/.font/static and install all the fonts.

  2. Download the ffmpeg builds:

    • Run the npm run download command to download the ffmpeg builds. The files will be downloaded in the /library folder.
    • (Manual option): If the download fails, you can manually download the ffmpeg build from FFmpeg Releases and place it in the /library folder:
      • /library/ffmpeg.exe
      • /library/ffprobe.exe
  3. Install sharp package:

    npm install sharp@latest
    
  4. Starting the application:

    npm start
    

    Navigate to http://localhost:3000/

Linux (Debian)

  1. Install FFmpeg:

    sudo apt update
    sudo apt install ffmpeg
    
  2. Optional (headless environment): If you don't have a graphical display (e.g., on a server), install these dependencies:

    sudo apt-get install libcairo2-dev libjpeg-dev libpango1.0-dev libgif-dev build-essential g++
    sudo apt-get install libgl1-mesa-dev xvfb libxi-dev libx11-dev 
    
  3. Install sharp package:

    npm install sharp@0.32.6
    
  4. Start the application:

    • With graphical display:
      npm start
      
    • Headless environment:
      xvfb-run -s "-ac -screen 0 1280x1024x24" npm start 
      

    Navigate to http://localhost:3000/

Troubleshooting

  1. API and services:

    • The app can run without the following API and services:

      • Pixabay API: The fallback assets will be used
      • Google Client & Services: Google Drive, Youtube Analytics, TTS etc. wont work.
    • However, the Gemini API Key should be present as it is required for core functionality.

  2. ffmpeg not installed:

    • Make sure that the ffmpeg is installed.
      • For windows run the npm run download command
      • For linux use the sudo apt install ffmpeg
  3. node-canvas error: If you are using Node.js version >20.16.0, you might encounter the following error when trying to install modules:

    Hit response response status error 404 not found canvas-v2.11.2-node-v127-win32-unknown-x64.zip

    Solution: Use the older version of nodejs between v18.17.0 to v20.12.2

  4. sharp version error:

    • Install the correct version of the sharp module for specific platform.
      • Windows: Run npm install sharp@latest
      • Linux: Run npm install sharp@0.32.6

Screenshots

Home:

Home

Dashboard:

Home

Creator:

Home

Editor:

Home

Analytics:

Home

Videos:

Home

Releases

No releases published

Packages

No packages published

Languages