Como funciona o FPVBuilder

Três camadas: catálogo (scraping/API de 20+ lojas), motor de compatibilidade (50+ regras escritas em código, não IA) e comparador entre lojas (fuzzy matcher com verificação de especificações). Tudo aberto, tudo documentado.

Ver as 50+ regras Sobre o projeto

Camada 1: catálogo

Spiders em Python (Scrapy) extraem produtos das lojas Shopify (Pyrodrone, GetFPV, BetaFPV, RaceDayQuads, MepsKing, HGLRC, Diatone, etc.) através da sua API pública /products.json. O AliExpress entra pela API oficial de afiliados (sem scraping de HTML). Cada produto passa por um normalizador por categoria que extrai especificações estruturadas (KV, estator, furação, tensão, etc.) com expressões regulares e regras por categoria.

Camada 2: motor de compatibilidade

50+ regras escritas em PHP em CompatibilityEngine.php. Cada regra devolve um de três estados: pass (compatível), warning (avisa mas deixa avançar) ou error (build inválido). As regras correm a cada alteração do build. Não é IA: são regras deterministas. Se o mount_pattern do motor não está no conjunto motor_mounts do frame, é erro. Ponto final.

Camada 3: matcher entre lojas

O mesmo produto (por exemplo, o RDQ Mach 3 Frame) pode estar à venda em 4 lojas com títulos diferentes. O matcher usa comparação aproximada de texto com verificação de especificações (estator+KV nos motores, células+mAh nas baterias, prop_size nos frames) para juntar duplicados e mostrar todas as opções de compra agrupadas numa única ficha.