compositions
25ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Defining compositions, stills, folders, default props and dynamic metadata.
Collection of role-based AI personas (e.g. senior-frontend-developer, security-engineer, technical-writer) with .claude and .cursor rules/skills. Copy a persona’s config into your project to get domain-tuned behavior, plus ready-made workflows for docs, PRs, and automation.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Defining compositions, stills, folders, default props and dynamic metadata.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Displaying captions in Remotion with TikTok-style pages and word highlighting.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Extract frames from videos at specific timestamps using Mediabunny.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Loading Google Fonts and local fonts in Remotion.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Getting the duration of an audio file in seconds with Mediabunny.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Getting the width and height of a video file with Mediabunny.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Getting the duration of a video file in seconds with Mediabunny.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Displaying GIFs, APNG, AVIF and WebP in Remotion.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Embedding images in Remotion using the component.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Importing .srt subtitle files into Remotion using @remotion/captions.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Avoid changing styles one property at a time. Group multiple CSS changes together via classes or cssText to minimize browser reflows.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Use a module-level Map to cache function results when the same function is called repeatedly with the same inputs during render.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Cache object property lookups in hot paths.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
localStorage, sessionStorage, and document.cookie are synchronous and expensive. Cache reads in memory.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Multiple .filter() or .map() calls iterate the array multiple times. Combine into one loop.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Return early when result is determined to skip unnecessary processing.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Don't create RegExp inside render. Hoist to module scope or memoize with useMemo().
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Multiple .find() calls by the same key should use a Map.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
When comparing arrays with expensive operations (sorting, deep equality, serialization), check lengths first. If lengths differ, the arrays cannot be equal.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Finding the smallest or largest element only requires a single pass through the array. Sorting is wasteful and slower.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Convert arrays to Set/Map for repeated membership checks.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
.sort() mutates the array in place, which can cause bugs with React state and props. Use .toSorted() to create a new sorted array without mutation.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Embedding Lottie animations in Remotion.
ratnesh-maurya/cursor-claude-personas
Cursor rule Cursor
Measuring DOM element dimensions in Remotion.
At most 3 mods per repository are shown here, and a mod shipped inside a plugin is left to that plugin's page — the rest are on their repository pages: