iArt.ai
AI 모션 그래픽 소프트웨어, 누구나 사용할 수 있는 After Effects 대안, 텍스트 프롬프트로 몇 분 안에 애니메이션·설명 영상 제작
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Aplicativo pessoal Next.js/Android. Catálogo e busca de filmes e séries via TMDB
(TMDB_TOKEN, somente no servidor); reprodução e programação via SuperFlixAPI.
Um único embed oficial, sem modos experimentais nem entrada de URL direta.
Séries usam /serie/{TMDB}/{temporada}/{episodio}#noEpList, com apenas um
seletor de episódios no Flix. Filmes usam /filme/{TMDB}#noLink.
A escolha de servidores tem altura maior; ao detectar vídeo no Android,
a área volta à proporção de reprodução. As permissões do iframe seguem a
integração documentada pelo provedor. Pop-ups são contidos pelo cliente Android. A partir da versão 0.4, uma fonte
HTTPS rejeitada pelo HTML com erro 4 pode ser tentada automaticamente pelo
motor Media3 local, sem trocar o provedor nem mostrar opções experimentais.
O APK bloqueia a abertura de janelas e navegação externa, preservando as
requisições internas que o provedor usa para preparar a mídia.
A versão 0.5 também aceita um manifesto HLS/DASH já solicitado pelo próprio
frame quando o vídeo falha com uma fonte blob:. A recuperação exige um único
vídeo e um único manifesto recente e tenta novamente por até cinco segundos
se a fonte chegar depois do erro. Não consulta endpoints extras nem adivinha links.
Fontes ambíguas e recusas HTTP continuam sendo apresentadas como falhas.
A versão 0.6 mantém o contexto de requisição declarado pelo vídeo e corrige
a seleção de parser para manifestos sem extensão, usando os bytes já lidos.
Falhas nativas deixam de ser apagadas por eventos repetidos do navegador.
A versão 0.7 segue os Locations HTTP 301/302/303/307/308, inclusive HTTPS→HTTP,
com limite e validação por salto. O transporte HTTP fica no motor de mídia;
a navegação e a proteção de pop-ups do WebView continuam como antes.
A versão 0.8 respeita o prazo de Retry-After em respostas 429, mostra a espera
e faz no máximo uma nova tentativa automática. O prazo por domínio persiste
entre recargas; a liberação efetiva depende do provedor.
O aviso inclui diagnóstico copiável com versão do APK/WebView, domínio do frame,
tipo de fonte e motivo fixo; nenhum caminho, query, cookie ou token é exibido.
O navegador comum usa o iframe oficial e as próprias regras de pop-up do navegador.
/ao-vivo é uma aba principal e tem acesso destacado no início.
/api/live consulta /lista?category=canais&format=json e
/lista?category=eventos&format=json, com cache de 60 segundos e timeout.
Busca por canal/time/competição, categorias derivadas dos canais, canais
favoritos locais, agenda e filtro de eventos explicitamente marcados ao vivo.
Horários com offset são exibidos em Brasília; datas sem fuso mantêm o horário
informado pelo provedor, com data e hora legíveis. Nunca inferimos que um jogo está ao vivo só pelo horário.
URLs de reprodução vêm da resposta oficial e precisam pertencer ao domínio
SuperFlixAPI HTTPS. play_event_url preserva os canais vinculados ao evento.
Nenhum endpoint de vídeo é adivinhado e não há proxy de HTML/stream.
Respostas inválidas ou recusas não se tornam listas vazias silenciosas.
Se a consulta falhar, o usuário pode tentar a página de canais/agenda do próprio
provedor dentro do player protegido do app. A disponibilidade e a permissão de
embed dessas páginas dependem do provedor.
Validação: a rota do backend consultou o catálogo público real com HTTP 200
(327 canais e 265 eventos em 17/10/2026). Os campos logo_url, embed_url,
start_time, category e embeds[].provider foram conferidos na resposta real
e têm teste de regressão. A disponibilidade do catálogo muda com a programação.
A página de reprodução exige verificação humana neste ambiente; não foi contornada. O servidor alternativo é
controlado pelo provedor; testes sintéticos de compatibilidade não comprovam
sua disponibilidade real.
O início consulta mais oito coleções temáticas, elimina repetições entre essas coleções e permite explorar sugestões paginadas sem busca. Consultas TMDB têm timeout e cache; uma coleção que falha não apaga as demais. Isso amplia as opções exibidas, sem afirmar disponibilidade de cada título no provedor.
No Android, a seleção de servidores recebe o tema Flix sem trocar os elementos ou seus eventos de clique. Players HTML conhecidos recebem controles próprios também antes da tela cheia, isolados em Shadow DOM. Só assumimos o vídeo com metadados disponíveis e devolvemos a interface ao provedor durante anúncios. Fontes, requisições e o fluxo de preparação do servidor alternativo continuam no documento original. No navegador comum, a interface dentro do iframe de outro domínio depende de suporte oficial do provedor; CSS da aplicação não atravessa essa fronteira.
Cadastro, assinatura e anúncios comerciais ainda não estão ativados. O plano de integração e os serviços necessários estão em docs/assinaturas-e-anuncios.md.
Importar o repositório na Vercel e configurar TMDB_TOKEN com um Read Access
Token da TMDB. O token nunca deve ir para o cliente ou para o GitHub.
npm test e npm run build (Node.js 22.6+). O workflow Android também executa
unitários, lint, testes de pop-ups síncronos/assíncronos, retomada, PiP e duração
de transmissão ao vivo; gera APK e relatórios. Ver android/README.md para assinatura.