import { interpolate, useCurrentFrame, useVideoConfig, AbsoluteFill, Sequence, Img, staticFile, spring } from 'remotion'; import React from 'react'; import { loadFont } from '@remotion/google-fonts/inter'; import { Background } from './components/Background'; import { TerminalScene } from './components/TerminalScene'; import { TimelineScene } from './components/TimelineScene'; loadFont(); const COLORS = { textPrimary: '#FFFFFF', textSecondary: '#B8B8B8', accentGreen: '#7CB97A', accentTeal: '#5BA8A0', accentAmber: '#D4A574', }; const Logo: React.FC<{ scale?: number }> = ({ scale = 1 }) => { const frame = useCurrentFrame(); const { fps } = useVideoConfig(); const dots = [ { color: COLORS.accentGreen, delay: 0 }, { color: COLORS.accentTeal, delay: 5 }, { color: COLORS.accentAmber, delay: 10 }, { color: COLORS.accentTeal, delay: 15 }, { color: COLORS.accentGreen, delay: 20 }, { color: COLORS.accentAmber, delay: 25 }, { color: COLORS.accentGreen, delay: 30 }, { color: COLORS.accentTeal, delay: 35 }, { color: COLORS.accentAmber, delay: 40 }, ]; return (
{dots.map((dot, i) => { const spr = spring({ frame: frame - dot.delay, fps, config: { damping: 10 } }); const s = interpolate(spr, [0, 1], [0, 1]); const opacity = interpolate(spr, [0, 1], [0, 1]); return (
); })}
); }; const GlassCard: React.FC<{ children: React.ReactNode; className?: string }> = ({ children, className }) => { return (
{children}
); }; const TitleScene: React.FC = () => { const frame = useCurrentFrame(); const opacity = interpolate(frame, [0, 20], [0, 1]); const y = interpolate(frame, [0, 20], [30, 0]); const blur = interpolate(frame, [0, 20], [10, 0]); return (

Beadboard

Agent-Driven Project Orchestration

); }; const ShowcaseScene: React.FC<{ src: string; title: string; subtitle: string }> = ({ src, title, subtitle }) => { const frame = useCurrentFrame(); const { fps } = useVideoConfig(); const spr = spring({ frame, fps, config: { damping: 14, mass: 0.8 }, }); const opacity = interpolate(frame, [0, 15], [0, 1]); const scale = interpolate(spr, [0, 1], [0.92, 1]); const y = interpolate(spr, [0, 1], [60, 0]); // Continuous floating animation const floatY = Math.sin(frame / 40) * 8; return (

{title}

{subtitle}

{/* Shine effect */}
); }; const OutroScene: React.FC = () => { const frame = useCurrentFrame(); const opacity = interpolate(frame, [0, 20], [0, 1]); const scale = interpolate(frame, [0, 100], [1, 1.1]); return (

Build Faster.

Deploy with Confidence.

); } export const Main: React.FC = () => { return ( ); };