Back to skills
SkillHub ClubShip Full StackFull Stack

kinetic-video-creator

Imported from https://github.com/aviz85/claude-skills-library.

Packaged view

This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.

Stars
20
Hot score
87
Updated
March 20, 2026
Overall rating
C3.0
Composite score
3.0
Best-practice grade
F32.4

Install command

npx @skill-hub/cli install aviz85-claude-skills-library-kinetic-video-creator

Repository

aviz85/claude-skills-library

Skill path: plugins/kinetic-video-creator/skills/kinetic-video-creator

Imported from https://github.com/aviz85/claude-skills-library.

Open repository

Best for

Primary workflow: Ship Full Stack.

Technical facets: Full Stack.

Target audience: everyone.

License: Unknown.

Original source

Catalog source: SkillHub Club.

Repository owner: aviz85.

This is still a mirrored public skill entry. Review the repository before installing into production workflows.

What it helps with

  • Install kinetic-video-creator into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
  • Review https://github.com/aviz85/claude-skills-library before adding kinetic-video-creator to shared team environments
  • Use kinetic-video-creator for development workflows

Works across

Claude CodeCodex CLIGemini CLIOpenCode

Favorites: 0.

Sub-skills: 0.

Aggregator: No.

Original source / Raw SKILL.md

---
name: kinetic-video-creator
description: "Create professional kinetic typography videos from scratch. Includes speech writing, TTS with emotional dynamics, music generation, and animated text. Use for: promo videos, explainers, social content, inspirational speeches, product launches."
argument-hint: [topic] [tone: inspirational/dramatic/energetic/calm]
enhancedBy:
  - speech-generator: "TTS with aviz's cloned voice - optimized for Hebrew"
  - transcribe: "Word-level timing for animation sync"
  - music-generator: "Background music matching emotional arc"
  - youtube-uploader: "Optional publishing"
---

# Kinetic Video Creator

Create stunning kinetic typography videos with AI-generated speech, music, and dynamic animations.

## Workflow Overview

1. **Script** → Craft emotionally compelling speech text
2. **Speech** → Use `/speech-generator` skill for TTS
3. **Transcribe** → Use `/transcribe` skill for word timing
4. **Music** → Use `/music-generator` skill for background
5. **Merge** → Combine speech + music
6. **Animate** → Create kinetic typography in Remotion
7. **Render** → Produce final video
8. **Publish** → Use `/youtube-uploader` skill (optional)

---

## Step 1: Craft the Script

### Language Selection

**Hebrew (Recommended for aviz's voice):**
- Use Hebrew emotional directions in brackets
- Add natural Hebrew filler words
- See "Hebrew Script Guidelines" section below

**English:**
- Use English emotional directions
- See "English Script Guidelines" section below

---

## Hebrew Script Guidelines

aviz's cloned voice is optimized for Hebrew. Use these Hebrew directions:

### Hebrew Emotional Directions

| Direction | Effect |
|-----------|--------|
| `[נשימה עמוקה]` | Deep breath, pause |
| `[בהתלהבות]` | Enthusiastic |
| `[ברצינות]` | Serious tone |
| `[בעצב]` | Sad, emotional |
| `[בשקט]` | Quiet, intimate |
| `[מהר]` | Fast pace |
| `[לאט ובבירור]` | Slow and clear |
| `[שאלה]` | Question tone |
| `[הפתעה]` | Surprise |
| `[צחוק קל]` | Light laugh |
| `[בחום]` | Warm tone |
| `[בכוח]` | Powerful, emphatic |

### Hebrew Filler Words (for natural flow)

- `אממ...` - hesitation
- `אהה...` - thinking
- `כאילו...` - like
- `נו...` - well
- `יאללה...` - come on
- `בקיצור...` - in short
- `...` - pause

### Hebrew Script Example

```
[נשימה עמוקה] יש רגע...
[לאט ובבירור] רגע שהכל משתנה.

[ברצינות] אבא שלי חלה בפוליו כשהיה תינוק.
כל חייו הוא היה על כיסא גלגלים.

[בהתלהבות] אבל אבא שלי? הוא היה ספורטאי מצטיין!
[בחום] הוא תמיד האמין... שאפשר להגשים כל חלום.

[בעצב] כשהייתי בן חמש עשרה... אבא נפטר.

[בכוח] והכאב הזה? הפך למשימה שלי.
[בחום] לעזור לאנשים אחרים להגשים את החלומות שלהם.
```

---

## English Script Guidelines

### English Emotional Directions

| Direction | Effect |
|-----------|--------|
| `[pause]` | Brief pause |
| `[long pause]` | Extended pause |
| `[slowly]` | Slower delivery |
| `[faster]` | Quickened pace |
| `[whisper]` | Softer, intimate |
| `[emphatic]` | Strong emphasis |
| `[building]` | Increasing intensity |
| `[warm]` | Friendly tone |
| `[dramatic]` | Theatrical |
| `[matter-of-fact]` | Conversational |

### English Script Template

```
[HOOK - 5-10 seconds]
[dramatic pause] Opening line that grabs attention.
[slowly, with weight] The provocative statement.

[BUILD - 20-40 seconds]
[building intensity] Establish the context.
[pause for effect] Key insight moment.

[PEAK - 20-30 seconds]
[powerful, emphatic] The main message.
[pause] Let it land.

[RESOLVE - 15-25 seconds]
[warm, inspiring] Paint the vision.
[final beat] Memorable closing.
```

---

## Step 2: Generate Speech

**Use the speech-generator skill:**

```
/speech-generator [path/to/script.txt] -o [path/to/speech.mp3]
```

Or invoke directly:
```bash
cd ~/.claude/skills/speech-generator/scripts
npx ts-node generate_speech.ts -f script.txt -o speech.mp3
```

**Important:** The speech-generator uses aviz's cloned voice, which works best with Hebrew text and Hebrew emotional directions.

---

## Step 3: Transcribe for Timing

**Use the transcribe skill:**

```
/transcribe [path/to/speech.mp3] --json
```

Or invoke directly:
```bash
cd ~/.claude/skills/transcribe/scripts
npx ts-node transcribe.ts -i speech.mp3 -o transcript.srt --json
```

Output: `transcript_transcript.json` with word-level timing data.

---

## Step 4: Generate Background Music

**Use the music-generator skill:**

```
/music-generator [composition.json] -o background_music.mp3
```

### Music Composition Template

```json
{
  "duration_ms": 75000,
  "instrumental": true,
  "positive_global_styles": ["cinematic", "inspirational"],
  "negative_global_styles": ["aggressive", "chaotic"],
  "sections": [
    {
      "section_name": "Hook - Mysterious",
      "duration_ms": 12000,
      "positive_local_styles": ["suspenseful", "soft"],
      "negative_local_styles": ["loud"],
      "lines": []
    },
    {
      "section_name": "Build - Rising",
      "duration_ms": 25000,
      "positive_local_styles": ["hopeful", "building"],
      "negative_local_styles": ["slow"],
      "lines": []
    },
    {
      "section_name": "Peak - Triumphant",
      "duration_ms": 20000,
      "positive_local_styles": ["triumphant", "uplifting"],
      "negative_local_styles": ["quiet"],
      "lines": []
    }
  ]
}
```

---

## Step 5: Merge Audio

```bash
ffmpeg -y \
  -i speech.mp3 \
  -i background_music.mp3 \
  -filter_complex "[0:a]volume=1.0[speech];[1:a]volume=0.15[music];[speech][music]amix=inputs=2:duration=first[out]" \
  -map "[out]" -c:a libmp3lame -q:a 2 \
  final_audio.mp3
```

---

## Step 6: Create Remotion Composition

### Project Location

```bash
cd /Users/aviz/remotion-assistant
```

### Default Template: SequenceComposition (One Word Per Screen)

**Recommended:** Use `SequenceComposition` for maximum impact - displays one word at a time with full-screen typography.

```tsx
import { SequenceComposition } from '../templates/SequenceComposition';
import transcriptData from '../../projects/[project]/transcript_transcript.json';

const WORD_TIMINGS = transcriptData.words
  .filter((w) => w.word.trim() !== '')
  .map((w) => ({
    word: w.word,
    start: w.start,
    end: w.end,
  }));

export const MyVideo: React.FC = () => {
  return (
    <SequenceComposition
      wordTimings={WORD_TIMINGS}
      audioFile="[project]/final_audio.mp3"
      baseFontSize={200}
      dustEnabled={true}
      lightBeamsEnabled={true}
      centerGlowEnabled={true}
      glowIntensity={1}
      anticipationFrames={5}
      colorSchemeStart={0}
    />
  );
};
```

### Alternative: MultiWordComposition (Word Cloud)

Use for faster-paced content with multiple words on screen:

```tsx
import { MultiWordComposition } from '../templates/MultiWordComposition';
```

### Hebrew Font Support

For Hebrew text, use Heebo font:

```tsx
import { loadFont } from '@remotion/google-fonts/Heebo';

const { fontFamily } = loadFont('normal', {
  weights: ['400', '600', '700', '900'],
  subsets: ['hebrew', 'latin'],
});
```

Add RTL styling:
```tsx
style={{
  direction: 'rtl',
  fontFamily,
}}
```

---

## Step 7: Render

```bash
cd /Users/aviz/remotion-assistant
npx remotion render CompositionName output.mp4
```

---

## Step 8: Upload (Optional)

**Use the youtube-uploader skill:**

```
/youtube-uploader [video.mp4] --title "Title" --description "Description"
```

---

## Project Structure

```
remotion-assistant/
├── public/[project]/
│   └── final_audio.mp3      # Audio for Remotion
├── projects/[project]/
│   ├── speech.txt           # Script
│   ├── speech.mp3           # TTS output
│   ├── transcript_transcript.json  # Word timings
│   ├── music_composition.json
│   ├── background_music.mp3
│   ├── final_audio.mp3      # Merged audio
│   └── output.mp4           # Final video
└── src/compositions/
    └── [ProjectName].tsx    # Composition
```

---

## Quick Reference

| Step | Skill/Command |
|------|---------------|
| Speech | `/speech-generator script.txt -o speech.mp3` |
| Transcribe | `/transcribe speech.mp3 --json` |
| Music | `/music-generator composition.json` |
| Merge | `ffmpeg` (see above) |
| Render | `npx remotion render Name output.mp4` |
| Upload | `/youtube-uploader output.mp4` |
kinetic-video-creator | SkillHub