[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6JC8XVCSZ38E7CE4H2SQTZF":3,"skill-same:01M6JC8XVCSZ38E7CE4H2SQTZF":228},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":25,"publishedAt":36,"linkOnly":37,"markdownContent":38,"markdownBody":39,"frontMatter":40,"refName":42,"commitSha":43,"skillDirectory":44,"forksCount":45,"repositoryHtmlUrl":46,"repositoryHomepageUrl":47,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":49,"install":50,"resources":63},"01M6JC8XVCSZ38E7CE4H2SQTZF","remotion-best-practices",null,"Best practices for Remotion - Video creation in React","S3YED\u002Fappie-kit","S3YED","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F62743867?v=4","01M6JBKBRRVP6KMS0VWZ27T3R6","01M6JBKBX0KG30284PW1DBYJT1",14,"MIT","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002FSKILL.md",[17,22],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000009","前端开发","SCENARIO","使用场景",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000016","图像与多媒体",[26,27,28,29,30,31,32,33,34,35],"best practices","remotion best practices","Remotion","react","Video","Animation","Composition","remotion, video, react, animation, composition","creation","for","2026-11-10 10:12:30",false,"---\nname: remotion-best-practices\ndescription: Best practices for Remotion - Video creation in React\nmetadata:\n  tags: remotion, video, react, animation, composition\n---\n\n## When to use\n\nUse this skills whenever you are dealing with Remotion code to obtain the domain-specific knowledge.\n\n## Captions\n\nWhen dealing with captions or subtitles, load the [.\u002Frules\u002Fsubtitles.md](.\u002Frules\u002Fsubtitles.md) file for more information.\n\n## Using FFmpeg\n\nFor some video operations, such as trimming videos or detecting silence, FFmpeg should be used. Load the [.\u002Frules\u002Fffmpeg.md](.\u002Frules\u002Fffmpeg.md) file for more information.\n\n## Audio visualization\n\nWhen needing to visualize audio (spectrum bars, waveforms, bass-reactive effects), load the [.\u002Frules\u002Faudio-visualization.md](.\u002Frules\u002Faudio-visualization.md) file for more information.\n\n## Sound effects\n\nWhen needing to use sound effects, load the [.\u002Frules\u002Fsound-effects.md](.\u002Frules\u002Fsound-effects.md) file for more information.\n\n## How to use\n\nRead individual rule files for detailed explanations and code examples:\n\n- [rules\u002F3d.md](rules\u002F3d.md) - 3D content in Remotion using Three.js and React Three Fiber\n- [rules\u002Fanimations.md](rules\u002Fanimations.md) - Fundamental animation skills for Remotion\n- [rules\u002Fassets.md](rules\u002Fassets.md) - Importing images, videos, audio, and fonts into Remotion\n- [rules\u002Faudio.md](rules\u002Faudio.md) - Using audio and sound in Remotion - importing, trimming, volume, speed, pitch\n- [rules\u002Fcalculate-metadata.md](rules\u002Fcalculate-metadata.md) - Dynamically set composition duration, dimensions, and props\n- [rules\u002Fcan-decode.md](rules\u002Fcan-decode.md) - Check if a video can be decoded by the browser using Mediabunny\n- [rules\u002Fcharts.md](rules\u002Fcharts.md) - Chart and data visualization patterns for Remotion (bar, pie, line, stock charts)\n- [rules\u002Fcompositions.md](rules\u002Fcompositions.md) - Defining compositions, stills, folders, default props and dynamic metadata\n- [rules\u002Fextract-frames.md](rules\u002Fextract-frames.md) - Extract frames from videos at specific timestamps using Mediabunny\n- [rules\u002Ffonts.md](rules\u002Ffonts.md) - Loading Google Fonts and local fonts in Remotion\n- [rules\u002Fget-audio-duration.md](rules\u002Fget-audio-duration.md) - Getting the duration of an audio file in seconds with Mediabunny\n- [rules\u002Fget-video-dimensions.md](rules\u002Fget-video-dimensions.md) - Getting the width and height of a video file with Mediabunny\n- [rules\u002Fget-video-duration.md](rules\u002Fget-video-duration.md) - Getting the duration of a video file in seconds with Mediabunny\n- [rules\u002Fgifs.md](rules\u002Fgifs.md) - Displaying GIFs synchronized with Remotion's timeline\n- [rules\u002Fimages.md](rules\u002Fimages.md) - Embedding images in Remotion using the Img component\n- [rules\u002Flight-leaks.md](rules\u002Flight-leaks.md) - Light leak overlay effects using @remotion\u002Flight-leaks\n- [rules\u002Flottie.md](rules\u002Flottie.md) - Embedding Lottie animations in Remotion\n- [rules\u002Fmeasuring-dom-nodes.md](rules\u002Fmeasuring-dom-nodes.md) - Measuring DOM element dimensions in Remotion\n- [rules\u002Fmeasuring-text.md](rules\u002Fmeasuring-text.md) - Measuring text dimensions, fitting text to containers, and checking overflow\n- [rules\u002Fsequencing.md](rules\u002Fsequencing.md) - Sequencing patterns for Remotion - delay, trim, limit duration of items\n- [rules\u002Ftailwind.md](rules\u002Ftailwind.md) - Using TailwindCSS in Remotion\n- [rules\u002Ftext-animations.md](rules\u002Ftext-animations.md) - Typography and text animation patterns for Remotion\n- [rules\u002Ftiming.md](rules\u002Ftiming.md) - Interpolation curves in Remotion - linear, easing, spring animations\n- [rules\u002Ftransitions.md](rules\u002Ftransitions.md) - Scene transition patterns for Remotion\n- [rules\u002Ftransparent-videos.md](rules\u002Ftransparent-videos.md) - Rendering out a video with transparency\n- [rules\u002Ftrimming.md](rules\u002Ftrimming.md) - Trimming patterns for Remotion - cut the beginning or end of animations\n- [rules\u002Fvideos.md](rules\u002Fvideos.md) - Embedding videos in Remotion - trimming, volume, speed, looping, pitch\n- [rules\u002Fparameters.md](rules\u002Fparameters.md) - Make a video parametrizable by adding a Zod schema\n- [rules\u002Fmaps.md](rules\u002Fmaps.md) - Add a map using Mapbox and animate it\n- [rules\u002Fvoiceover.md](rules\u002Fvoiceover.md) - Adding AI-generated voiceover to Remotion compositions using ElevenLabs TTS\n","## When to use\n\nUse this skills whenever you are dealing with Remotion code to obtain the domain-specific knowledge.\n\n## Captions\n\nWhen dealing with captions or subtitles, load the [.\u002Frules\u002Fsubtitles.md](.\u002Frules\u002Fsubtitles.md) file for more information.\n\n## Using FFmpeg\n\nFor some video operations, such as trimming videos or detecting silence, FFmpeg should be used. Load the [.\u002Frules\u002Fffmpeg.md](.\u002Frules\u002Fffmpeg.md) file for more information.\n\n## Audio visualization\n\nWhen needing to visualize audio (spectrum bars, waveforms, bass-reactive effects), load the [.\u002Frules\u002Faudio-visualization.md](.\u002Frules\u002Faudio-visualization.md) file for more information.\n\n## Sound effects\n\nWhen needing to use sound effects, load the [.\u002Frules\u002Fsound-effects.md](.\u002Frules\u002Fsound-effects.md) file for more information.\n\n## How to use\n\nRead individual rule files for detailed explanations and code examples:\n\n- [rules\u002F3d.md](rules\u002F3d.md) - 3D content in Remotion using Three.js and React Three Fiber\n- [rules\u002Fanimations.md](rules\u002Fanimations.md) - Fundamental animation skills for Remotion\n- [rules\u002Fassets.md](rules\u002Fassets.md) - Importing images, videos, audio, and fonts into Remotion\n- [rules\u002Faudio.md](rules\u002Faudio.md) - Using audio and sound in Remotion - importing, trimming, volume, speed, pitch\n- [rules\u002Fcalculate-metadata.md](rules\u002Fcalculate-metadata.md) - Dynamically set composition duration, dimensions, and props\n- [rules\u002Fcan-decode.md](rules\u002Fcan-decode.md) - Check if a video can be decoded by the browser using Mediabunny\n- [rules\u002Fcharts.md](rules\u002Fcharts.md) - Chart and data visualization patterns for Remotion (bar, pie, line, stock charts)\n- [rules\u002Fcompositions.md](rules\u002Fcompositions.md) - Defining compositions, stills, folders, default props and dynamic metadata\n- [rules\u002Fextract-frames.md](rules\u002Fextract-frames.md) - Extract frames from videos at specific timestamps using Mediabunny\n- [rules\u002Ffonts.md](rules\u002Ffonts.md) - Loading Google Fonts and local fonts in Remotion\n- [rules\u002Fget-audio-duration.md](rules\u002Fget-audio-duration.md) - Getting the duration of an audio file in seconds with Mediabunny\n- [rules\u002Fget-video-dimensions.md](rules\u002Fget-video-dimensions.md) - Getting the width and height of a video file with Mediabunny\n- [rules\u002Fget-video-duration.md](rules\u002Fget-video-duration.md) - Getting the duration of a video file in seconds with Mediabunny\n- [rules\u002Fgifs.md](rules\u002Fgifs.md) - Displaying GIFs synchronized with Remotion's timeline\n- [rules\u002Fimages.md](rules\u002Fimages.md) - Embedding images in Remotion using the Img component\n- [rules\u002Flight-leaks.md](rules\u002Flight-leaks.md) - Light leak overlay effects using @remotion\u002Flight-leaks\n- [rules\u002Flottie.md](rules\u002Flottie.md) - Embedding Lottie animations in Remotion\n- [rules\u002Fmeasuring-dom-nodes.md](rules\u002Fmeasuring-dom-nodes.md) - Measuring DOM element dimensions in Remotion\n- [rules\u002Fmeasuring-text.md](rules\u002Fmeasuring-text.md) - Measuring text dimensions, fitting text to containers, and checking overflow\n- [rules\u002Fsequencing.md](rules\u002Fsequencing.md) - Sequencing patterns for Remotion - delay, trim, limit duration of items\n- [rules\u002Ftailwind.md](rules\u002Ftailwind.md) - Using TailwindCSS in Remotion\n- [rules\u002Ftext-animations.md](rules\u002Ftext-animations.md) - Typography and text animation patterns for Remotion\n- [rules\u002Ftiming.md](rules\u002Ftiming.md) - Interpolation curves in Remotion - linear, easing, spring animations\n- [rules\u002Ftransitions.md](rules\u002Ftransitions.md) - Scene transition patterns for Remotion\n- [rules\u002Ftransparent-videos.md](rules\u002Ftransparent-videos.md) - Rendering out a video with transparency\n- [rules\u002Ftrimming.md](rules\u002Ftrimming.md) - Trimming patterns for Remotion - cut the beginning or end of animations\n- [rules\u002Fvideos.md](rules\u002Fvideos.md) - Embedding videos in Remotion - trimming, volume, speed, looping, pitch\n- [rules\u002Fparameters.md](rules\u002Fparameters.md) - Make a video parametrizable by adding a Zod schema\n- [rules\u002Fmaps.md](rules\u002Fmaps.md) - Add a map using Mapbox and animate it\n- [rules\u002Fvoiceover.md](rules\u002Fvoiceover.md) - Adding AI-generated voiceover to Remotion compositions using ElevenLabs TTS\n",{"name":5,"metadata":41,"description":7},{"tags":33},"master","8ec37df6d71fb664ea19d32c079e7d3ff931a8e0","skills\u002Fcontent\u002Fremotion-best-practices",3,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit","https:\u002F\u002Fweblyfe.ai","https:\u002F\u002Fgithub.com\u002FS3YED","2026-08-27 01:54:02",{"source":8,"skillName":5,"commands":51,"prompt":61,"zipAvailable":62},[52,55,58],{"tool":53,"command":54},"npx","npx skills add S3YED\u002Fappie-kit --skill remotion-best-practices",{"tool":56,"command":57},"bunx","bunx skills add S3YED\u002Fappie-kit --skill remotion-best-practices",{"tool":59,"command":60},"pnpm","pnpm dlx skills add S3YED\u002Fappie-kit --skill remotion-best-practices","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002FSKILL.md",true,[64,70,74,78,84,88,92,96,100,104,108,112,116,120,124,128,132,136,140,144,148,152,156,160,164,168,172,176,180,184,188,192,196,200,204,208,212,216,220,224],{"path":65,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":68,"sourceHtmlUrl":69},"rules\u002F3d.md","REFERENCE","参考文档",2292,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002F3d.md",{"path":71,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":72,"sourceHtmlUrl":73},"rules\u002Fanimations.md",778,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fanimations.md",{"path":75,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":76,"sourceHtmlUrl":77},"rules\u002Fassets.md",1604,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fassets.md",{"path":79,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":82,"sourceHtmlUrl":83},"rules\u002Fassets\u002Fcharts-bar-chart.tsx","OTHER","其他",3429,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fassets\u002Fcharts-bar-chart.tsx",{"path":85,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":86,"sourceHtmlUrl":87},"rules\u002Fassets\u002Ftext-animations-typewriter.tsx",2183,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fassets\u002Ftext-animations-typewriter.tsx",{"path":89,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":90,"sourceHtmlUrl":91},"rules\u002Fassets\u002Ftext-animations-word-highlight.tsx",2380,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fassets\u002Ftext-animations-word-highlight.tsx",{"path":93,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":94,"sourceHtmlUrl":95},"rules\u002Faudio-visualization.md",4892,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Faudio-visualization.md",{"path":97,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":98,"sourceHtmlUrl":99},"rules\u002Faudio.md",3625,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Faudio.md",{"path":101,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":102,"sourceHtmlUrl":103},"rules\u002Fcalculate-metadata.md",3227,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fcalculate-metadata.md",{"path":105,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":106,"sourceHtmlUrl":107},"rules\u002Fcan-decode.md",1587,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fcan-decode.md",{"path":109,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":110,"sourceHtmlUrl":111},"rules\u002Fcharts.md",2942,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fcharts.md",{"path":113,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":114,"sourceHtmlUrl":115},"rules\u002Fcompositions.md",3794,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fcompositions.md",{"path":117,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":118,"sourceHtmlUrl":119},"rules\u002Fdisplay-captions.md",5471,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fdisplay-captions.md",{"path":121,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":122,"sourceHtmlUrl":123},"rules\u002Fextract-frames.md",5499,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fextract-frames.md",{"path":125,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":126,"sourceHtmlUrl":127},"rules\u002Fffmpeg.md",998,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fffmpeg.md",{"path":129,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":130,"sourceHtmlUrl":131},"rules\u002Ffonts.md",3484,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Ffonts.md",{"path":133,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":134,"sourceHtmlUrl":135},"rules\u002Fget-audio-duration.md",1357,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fget-audio-duration.md",{"path":137,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":138,"sourceHtmlUrl":139},"rules\u002Fget-video-dimensions.md",1626,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fget-video-dimensions.md",{"path":141,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":142,"sourceHtmlUrl":143},"rules\u002Fget-video-duration.md",1377,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fget-video-duration.md",{"path":145,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":146,"sourceHtmlUrl":147},"rules\u002Fgifs.md",3707,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fgifs.md",{"path":149,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":150,"sourceHtmlUrl":151},"rules\u002Fimages.md",2791,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fimages.md",{"path":153,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":154,"sourceHtmlUrl":155},"rules\u002Fimport-srt-captions.md",2247,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fimport-srt-captions.md",{"path":157,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":158,"sourceHtmlUrl":159},"rules\u002Flight-leaks.md",2305,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Flight-leaks.md",{"path":161,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":162,"sourceHtmlUrl":163},"rules\u002Flottie.md",1796,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Flottie.md",{"path":165,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":166,"sourceHtmlUrl":167},"rules\u002Fmaps.md",11300,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fmaps.md",{"path":169,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":170,"sourceHtmlUrl":171},"rules\u002Fmeasuring-dom-nodes.md",973,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fmeasuring-dom-nodes.md",{"path":173,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":174,"sourceHtmlUrl":175},"rules\u002Fmeasuring-text.md",2783,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fmeasuring-text.md",{"path":177,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":178,"sourceHtmlUrl":179},"rules\u002Fparameters.md",2387,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fparameters.md",{"path":181,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":182,"sourceHtmlUrl":183},"rules\u002Fsequencing.md",2746,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fsequencing.md",{"path":185,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":186,"sourceHtmlUrl":187},"rules\u002Fsfx.md",706,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fsfx.md",{"path":189,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":190,"sourceHtmlUrl":191},"rules\u002Fsubtitles.md",922,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fsubtitles.md",{"path":193,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":194,"sourceHtmlUrl":195},"rules\u002Ftailwind.md",420,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Ftailwind.md",{"path":197,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":198,"sourceHtmlUrl":199},"rules\u002Ftext-animations.md",700,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Ftext-animations.md",{"path":201,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":202,"sourceHtmlUrl":203},"rules\u002Ftiming.md",3961,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Ftiming.md",{"path":205,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":206,"sourceHtmlUrl":207},"rules\u002Ftranscribe-captions.md",1897,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Ftranscribe-captions.md",{"path":209,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":210,"sourceHtmlUrl":211},"rules\u002Ftransitions.md",5816,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Ftransitions.md",{"path":213,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":214,"sourceHtmlUrl":215},"rules\u002Ftransparent-videos.md",2267,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Ftransparent-videos.md",{"path":217,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":218,"sourceHtmlUrl":219},"rules\u002Ftrimming.md",1209,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Ftrimming.md",{"path":221,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":222,"sourceHtmlUrl":223},"rules\u002Fvideos.md",3509,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fvideos.md",{"path":225,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":226,"sourceHtmlUrl":227},"rules\u002Fvoiceover.md",3272,"https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fcontent\u002Fremotion-best-practices\u002Frules\u002Fvoiceover.md",[229,261,296,322,353,377],{"skillNo":230,"name":231,"nameZh":6,"description":232,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":233,"categories":234,"keywords":242,"publishedAt":36},"01M6JFD4M6N4DSGC7TXEJ5R3J2","ai-music","AI music generation and audio tools: HeartMuLa lyrics-to-music generation, songwriting craft (+ Suno prompts), and audio spectrogram\u002Ffeature visualization.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fwethlete\u002Fai-music\u002FSKILL.md",[235,238,239],{"categoryNo":236,"categoryName":237,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000013","分析与可视化",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":240,"categoryName":241,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",[243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260],"music","ai music","humanizer","visualization","Tools","Audio","hermes","hermes agent","songwriting","suno","lyrics","prompts","heartmula","craft","generation","feature","ai music generation","music generation",{"skillNo":262,"name":263,"nameZh":6,"description":264,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":265,"categories":266,"keywords":275,"publishedAt":36},"01M6JFCZE4XNFQFMNZDHKHT5V5","agentic-webdesign-design-system-ingestion","Use v0 Design Systems 2.0, Bolt Design System Agents, or Lovable to generate production UI from a client's real design system components — not generic Tailwind. Use when building a client website where brand consistency matters.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fweb-design\u002Fagentic-webdesign-design-system-ingestion\u002FSKILL.md",[267,270],{"categoryNo":268,"categoryName":269,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":271,"categoryName":272,"taxonomyType":273,"taxonomyTypeDesc":274},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295],"design","agentic","design system","system","ingestion","webdesign","agentic webdesign design system ingestion","components","generate","design systems","website","ui","Tailwind","bolt","lovable","v0","design-system","wed","design system components","appie",{"skillNo":297,"name":298,"nameZh":6,"description":299,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":300,"categories":301,"keywords":304,"publishedAt":36},"01M6JFCVPX3913CFAS6QQJ33ZB","agentic-webdesign-agent-elements","Use 21st.dev Agent Elements — 25 shadcn\u002Fui components purpose-built for AI agent UIs. Tool cards (Bash, Edit, Search, Plan, Subagent, MCP), chat, input, streaming. Open source, shadcn-registry install, no runtime lock-in.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fweb-design\u002Fagentic-webdesign-agent-elements\u002FSKILL.md",[302,303],{"categoryNo":240,"categoryName":241,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":271,"categoryName":272,"taxonomyType":273,"taxonomyTypeDesc":274},[277,305,281,306,307,308,283,309,310,311,312,313,314,315,316,317,318,319,320,321],"elements","agentic webdesign agent elements","MCP","ai agent","registry","search","streaming","open source","open","Bash","plan","subagent","edit","install","input","lock","source",{"skillNo":323,"name":324,"nameZh":6,"description":325,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":326,"categories":327,"keywords":332,"publishedAt":36},"01M6JFCQC7H65M9QJ6TRE71BS1","vercel-deployment","Deploy static sites and frontends to Vercel — handles both CLI and REST API paths, including the CLI token sanitization workaround.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fsoftware-development\u002Fvercel-deployment\u002FSKILL.md",[328,331],{"categoryNo":329,"categoryName":330,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":240,"categoryName":241,"taxonomyType":20,"taxonomyTypeDesc":21},[333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352],"deployment","vercel deployment","vercel","macos","cli","linux","windows","deploy","vercel deploy","REST","api","site","deploy to vercel","token","rest api","host","sites","paths","sanitization","static site",{"skillNo":354,"name":355,"nameZh":6,"description":356,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":357,"categories":358,"keywords":360,"publishedAt":36},"01M6JFCM4SMTXBM5A01BK2YQG1","software-quality-workflows","Umbrella workflow for TDD, debugging, code simplification, spikes, pre-commit review, and debugger-assisted investigation.","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fsoftware-development\u002Fsoftware-quality-workflows\u002FSKILL.md",[359],{"categoryNo":240,"categoryName":241,"taxonomyType":20,"taxonomyTypeDesc":21},[361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,35],"workflows","quality","software","software quality workflows","review","tdd","workflow","commit","debugging","code","debugger","pre-commit","investigation","code simplification","user","simplification",{"skillNo":378,"name":379,"nameZh":6,"description":380,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":381,"categories":382,"keywords":388,"publishedAt":36},"01M6JFCGD0M6CEATY01W7YN6DB","react-component-refactoring","Safely refactor large React components into smaller, maintainable pieces using proven patterns","https:\u002F\u002Fgithub.com\u002FS3YED\u002Fappie-kit\u002Fblob\u002Fmaster\u002Fskills\u002Fsoftware-development\u002Freact-component-refactoring\u002FSKILL.md",[383,386,387],{"categoryNo":384,"categoryName":385,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":240,"categoryName":241,"taxonomyType":20,"taxonomyTypeDesc":21},[29,389,390,391,392,393,394,395,336,396,397,283,398,339,399,370,400,401,402,403],"component","refactoring","component refactoring","react component","react component refactoring","frontend","writing","safe","typescript","react components","modular","refactor","simplify","patterns","test-driven-development"]