feat: add WebIngressos presentation video - #4
Conversation
📝 WalkthroughWalkthroughO PR adiciona uma apresentação Remotion do WebIngressos, configura o projeto de vídeo e remove componentes públicos não utilizados. Também atualiza exclusões de ferramentas e move ChangesApresentação Remotion
Manutenção da aplicação
Estimated code review effort: 4 (Complex) | ~45 minutes Sequence Diagram(s)sequenceDiagram
participant RemotionRoot
participant WebIngressosComposition
participant Presentation
participant VideoAssets
RemotionRoot->>WebIngressosComposition: registra a composição 1920×1080
WebIngressosComposition->>Presentation: renderiza as sequências
Presentation->>VideoAssets: reproduz os vídeos ProRes nas cenas intermediárias
Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
video/eslint.config.mjsESLint skipped: missing config or dependency (missing-dependency). The ESLint configuration references a package that is not available in the sandbox. video/package.jsonESLint skipped: the ESLint configuration for this file references a package that is not available in the sandbox. video/remotion.config.tsESLint skipped: the ESLint configuration for this file references a package that is not available in the sandbox.
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@video/package.json`:
- Line 11: Atualize a dependência `@remotion/media` no package.json para usar
exatamente a versão 4.0.503, removendo o prefixo ^ e mantendo-a alinhada com
remotion, `@remotion/cli` e `@remotion/eslint-config-flat`.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 249a4b13-6a8a-438f-955c-a16ff39c2830
⛔ Files ignored due to path filters (2)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yamlvideo/package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (22)
.prettierignoreeslint.config.mjspackage.jsonsrc/components/landing/pilot-form-lazy.tsxsrc/components/ui/badge.tsxsrc/components/ui/card.tsxsrc/components/ui/form.tsxsrc/components/ui/select.tsxsrc/components/ui/separator.tsxsrc/components/ui/textarea.tsxtsconfig.jsonvideo/.gitignorevideo/.prettierrcvideo/README.mdvideo/eslint.config.mjsvideo/package.jsonvideo/remotion.config.tsvideo/src/Composition.tsxvideo/src/Root.tsxvideo/src/index.cssvideo/src/index.tsvideo/tsconfig.json
💤 Files with no reviewable changes (5)
- src/components/ui/textarea.tsx
- src/components/ui/badge.tsx
- src/components/ui/card.tsx
- src/components/ui/separator.tsx
- src/components/ui/select.tsx
📜 Review details
🔇 Additional comments (17)
.prettierignore (1)
5-5: 📐 Maintainability & Code QualityAlinhe a exclusão do Prettier com as saídas do Remotion.
eslint.config.mjsjá excluivideo/out/**, mas este arquivo exclui apenasvideo/build/**. Se o check raiz executar Prettier sobre o repositório, os renders emvideo/outcontinuam no escopo. Adicionevideo/out/**e confirme o comando raiz antes do merge.Correção proposta
video/build/** +video/out/**eslint.config.mjs (1)
8-17: LGTM!tsconfig.json (1)
29-29: LGTM!package.json (1)
54-54: 🗄️ Data Integrity & IntegrationSincronize a classificação no
pnpm-lock.yaml.A mudança de
shadcnparadevDependenciestambém precisa aparecer no importador raiz do lockfile. A entradashadcn@4.16.0confirma a versão, mas não confirma a nova seção. Verifiquepnpm-lock.yamle executepnpm install --frozen-lockfile --ignore-scripts; o comando deve terminar sem solicitar atualização do lockfile.src/components/ui/form.tsx (1)
144-144: 🎯 Functional CorrectnessSem consumidores restantes de
FormDescription.Não há importações ou reexports de
FormDescriptionnos arquivos TypeScript/JavaScript do repositório.video/src/index.ts (1)
1-6: LGTM!src/components/landing/pilot-form-lazy.tsx (1)
27-28: LGTM!video/.gitignore (1)
1-11: LGTM!video/.prettierrc (1)
1-5: LGTM!video/eslint.config.mjs (1)
1-3: LGTM!video/package.json (1)
1-10: LGTM!Also applies to: 12-32
video/remotion.config.ts (1)
1-12: LGTM!video/tsconfig.json (1)
1-15: LGTM!video/README.md (1)
1-30: LGTM!video/src/Composition.tsx (1)
1-460: LGTM!video/src/Root.tsx (1)
1-10: LGTM!video/src/index.css (1)
1-19: LGTM!
| "dependencies": { | ||
| "@mediabunny/prores": "1.50.8", | ||
| "@remotion/cli": "4.0.503", | ||
| "@remotion/media": "^4.0.503", |
There was a problem hiding this comment.
🩺 Stability & Availability | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
jq -r '
.dependencies
| to_entries[]
| select(.key == "remotion" or (.key | startswith("`@remotion/`")))
| "\(.key)=\(.value)"
' video/package.json
fd -a -t f \
-g 'package-lock.json' \
-g 'npm-shrinkwrap.json' \
-g 'pnpm-lock.yaml' \
-g 'yarn.lock' \
videoRepository: prof-ramos/webingressos-page
Length of output: 456
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
echo '--- package summary ---'
jq '.name, .version, .lockfileVersion, .dependencies' video/package.json
echo '--- lockfile Remotion package entries ---'
if [ -f video/package-lock.json ]; then
jq -r '
.packages
| to_entries[]
| select(.key == "" or (.key | endswith("/remotion")) or .key | test("^node_modules/(@[^/]+/)?[^/]+/$"))
| select(.value.name? | test("^(`@remotion/`)?remotion$|^`@remotion/`"))
| "\(.key)=\(.value.version // empty) | \(.key)=\(.value.resolved // empty) | \(.key)=\(.value.integrity // empty)"
' video/package-lock.json | sed -n '1,160p'
else
echo 'no video/package-lock.json'
fi
echo '--- lockfile dependency aliases ---'
jq -r '
.packages[""].dependencies // {},
.packages[""].devDependencies // {}
| to_entries[]
| select(.key == "remotion" or (.key | startswith("`@remotion/`")))
| select(.key == "remotion" or (.key | startswith("`@remotion/`")))
| "\(.key)=\(.value)"
' video/package-lock.jsonRepository: prof-ramos/webingressos-page
Length of output: 525
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
echo '--- lockfile package entry for `@remotion/media` ---'
jq -r '
.packages[]
| select(((.key | type) == "string") and ((.key | endswith("/@remotion/media")) or (.key | endswith("/remotion"))))
| select(.value.name? == "`@remotion/media`" or .value.name? == "remotion")
| "\(.key) => version=\(.value.version // "MISSING") resolves=\(.value.resolved // "MISSING") integrity=\(.value.integrity // "MISSING")"
' video/package-lock.json
echo '--- lockfile dependency entries for Remotion packages ---'
jq -r '
.packages[""].dependencies // {},
.packages[""].devDependencies // {}
| to_entries[]
| select(.key == "remotion" or (.key | startswith("`@remotion/`")))
| "\(.key)=\(.value)"
' video/package-lock.jsonRepository: prof-ramos/webingressos-page
Length of output: 376
Fixa o @remotion/media na mesma versão do remotion.
Agora o video/package.json deixa o @remotion/media abrir para ^4.0.503, enquanto remotion, @remotion/cli e @remotion/eslint-config-flat estão em 4.0.503. Instalações limpas podem resolver versões diferentes e quebrar o bundle; usa 4.0.503 sem ^.
Correção proposta
- "`@remotion/media`": "^4.0.503",
+ "`@remotion/media`": "4.0.503",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "@remotion/media": "^4.0.503", | |
| "`@remotion/media`": "4.0.503", |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@video/package.json` at line 11, Atualize a dependência `@remotion/media` no
package.json para usar exatamente a versão 4.0.503, removendo o prefixo ^ e
mantendo-a alinhada com remotion, `@remotion/cli` e `@remotion/eslint-config-flat`.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6b734eb371
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| { | ||
| "name": "video", | ||
| "version": "1.0.0", | ||
| "description": "My Remotion video", | ||
| "repository": {}, | ||
| "license": "UNLICENSED", | ||
| "private": true, | ||
| "dependencies": { |
There was a problem hiding this comment.
Remove the standalone video app from the landing-only repo
This directory introduces a second application with its own React/Remotion runtime, npm dependency graph, public assets, and build lifecycle, even though this repository is explicitly scoped exclusively to the commercial-validation landing page. Keeping an unrelated production project here expands ownership and maintenance beyond that stated boundary; move the Remotion project to a dedicated repository and retain only any asset actually consumed by the landing.
AGENTS.md reference: AGENTS.md:L3-L9
Useful? React with 👍 / 👎.
| "**/*.tsx" | ||
| ], | ||
| "exclude": ["node_modules"] | ||
| "exclude": ["node_modules", "video"] |
There was a problem hiding this comment.
Run the video typecheck in CI before excluding it
As checked in .github/workflows/ci.yml, CI installs only the root pnpm workspace and runs the root scripts; pnpm-workspace.yaml includes only .. Excluding video here therefore means its separate npm run lint—including its TypeScript check—never runs in CI, so invalid Remotion imports or API usage can merge while every required root check passes. Add a CI step that installs and validates video/, or include it in the managed workspace, before isolating it from the root typecheck.
AGENTS.md reference: AGENTS.md:L72-L78
Useful? React with 👍 / 👎.
O que mudou
shadcnparadevDependenciese exclui artefatos Remotion dos checks raiz.Validação
npm run lintemvideo/;npm run buildemvideo/;video/out/webingressos-apresentacao.mp4(20 s, H.264, 1920x1080);pnpm checkna landing passou.Os MOVs fornecidos e o MP4 renderizado são assets locais ignorados pelo Git; o README do subprojeto documenta como preparar os arquivos em outra máquina.
Summary by CodeRabbit
Novos recursos
Documentação
Manutenção