dyz-gongwen-skills
公文写作 Skills|AI 公文写作助手:防编造、守保密、GB/T 9704 一键排版,覆盖 22 种文书,支持 Claude Code / Codex / Cursor
Translation pending
Apple-style 30-second promos for your app: 3D devices, kinetic type on the beat, real motion blur. Landscape, vertical and square. Just ask Claude.
SkillsGitHub @DannerAlyLatest connection check failedOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
🎬 A Claude skill that makes Apple-style 30-second promo videos: 3D laptop and phone with your real screens, kinetic type on every beat, real motion blur. Landscape, vertical and square.
Loading the full README.
Read the full README ↗A Claude skill that turns your app into an Apple‑style 30‑second promo: a 3D laptop and phone showing your real screens, and kinetic type that lands on every beat of the music.
HTML + Three.js, rendered frame by frame with real motion blur. Landscape, vertical and square from the same file.
🌐 Website · ▶ Watch the demo (MP4) · Install · Usage · How it works · 🇪🇸 Español
No video editor, no keyframes by hand. You give Claude your app, a song and the idea. It writes a short script, measures the beat, screenshots your product, puts it on a 3D laptop and phone, and animates the words so each one hits on a beat. Then it records the page frame by frame and hands you three MP4s.
CONFIG./plugin marketplace add DannerAly/promo-video-3d
/plugin install promo-video-3d@danneraly-promo
git clone https://github.com/DannerAly/promo-video-3d.git
cp -r promo-video-3d/skills/promo-video-3d ~/.claude/skills/
Download promo-video-3d.zip from the latest release and upload it in Customize → Skills → + → Upload a skill. (Rendering needs a machine with Chrome and ffmpeg, so Claude Code is the best fit.)
Make a 30‑second Apple‑style promo for my app. Use this song:
~/Downloads/track.mp4. Show the dashboard on a laptop and the checkout on a phone.
Haz un video corporativo de 30 segundos de mi sistema, con la compu y el celular en 3D y letras al ritmo de la música. Dámelo en horizontal, vertical y cuadrado.
What Claude does:
scripts/beats.mjs and asks you to confirm the 3‑hit moments by ear (you can answer in mm:ss:ff).scripts/capture.mjs, with optional login) and packs the images (scripts/pack.mjs).CONFIG in a copy of the template.scripts/render.sh) and opens the videos.[!NOTE] The skill's instructions are written in Spanish. Claude follows them in any language, and your video comes out in whatever language you ask for.
flowchart LR
A["audio"] --> B["beats.mjs<br/>BPM, downbeat, 3-hit fills"]
B --> C["CONFIG<br/>script, hits, brand, patches"]
D["capture.mjs + pack.mjs"] --> E["assets.js<br/>screens, logo, photos"]
C & E --> F["index.html<br/>render(t): Three.js + DOM"]
F --> G["rec.mjs<br/>headless Chrome, seek(t), 120 shots/s"]
G --> H["render.sh<br/>ffmpeg tmix → motion blur + music"]
H --> I["landscape · vertical · square MP4"]
render(t) draws the exact state of second t with no dependency on the previous frame, so it can be recorded at any rate and with sub‑frames.br(k), bt(n)) from CONFIG.bpm and CONFIG.firstBeat, so changing the song moves everything together.{x, y, z, rx, ry, rz, s} with CSS‑style cubic‑bezier easing.CONFIG.patches.Everything lives in one block at the top of template/index.html:
window.CONFIG = {
audio: 'audio.m4a', duration: 30,
bpm: 114, firstBeat: 0.08,
hits: [[5.30, 5.83, 6.37], [15.83, 16.37, 16.90], [24.27, 24.83, 25.30]],
hitWords: [['Plan.', 'Charge.', '*Grow.'], ['Web.', '*Mobile.', 'Team.'], ['Simpler.', 'Faster.', '*Better.']],
strike: ['Notebook.', 'Excel.', 'Emails.', 'Sticky notes.'],
problem: ['No more', '*chaos.'],
promise: ['Everything simple,', 'at hand'],
laptopHead: 'Your whole business, *in *one *place.',
// … stack, bridge, phoneHead, decode, duoHead, tiles
brand: { name: 'Nova', tagline: 'Your business, simpler.', url: 'yourapp.com', appStore: true, googlePlay: true },
patches: { laptop: [], phone: [] },
};
A * before a word paints it with the gradient. Shot‑by‑shot structure and script ideas are in references/patterns.md.
This is the beginning of the README. Read the rest at the original. Read the full README ↗