From d71dc8df3c7eee1d62382c41f19656b81b2d7a35 Mon Sep 17 00:00:00 2001 From: Lucas Rayan Date: Tue, 25 Aug 2026 16:55:38 -0300 Subject: [PATCH] feat: add ESP-RainMaker and ESP-Matter frameworks and update existing framework metadata in frameworks.json --- app/componentes/layout.jsx | 74 ++++ app/componentes/page.jsx | 644 +++++++++++++++++++++++++++++ app/diagnostico/page.jsx | 17 +- app/frameworks/[key]/page.jsx | 53 ++- app/frameworks/page.jsx | 193 ++++++--- app/page.jsx | 21 +- app/sitemap.js | 1 + components/Footer.jsx | 8 + components/Header.jsx | 37 +- lib/componentRegistryData.js | 470 +++++++++++++++++++++ lib/diagnosticoData.js | 149 ++++++- public/exemplos/esp-idf.c | 59 ++- public/exemplos/esp-iot-solution.c | 72 ++++ public/exemplos/esp-now.c | 92 +++++ public/exemplos/esp-rainmaker.c | 76 ++++ public/exemplos/esp-sr.c | 98 +++++ public/exemplos/esp-zigbee.c | 97 +++++ public/exemplos/rust-esp.rs | 48 +++ public/frameworks.json | 531 +++++++++++++++--------- 19 files changed, 2458 insertions(+), 282 deletions(-) create mode 100644 app/componentes/layout.jsx create mode 100644 app/componentes/page.jsx create mode 100644 lib/componentRegistryData.js create mode 100644 public/exemplos/esp-iot-solution.c create mode 100644 public/exemplos/esp-now.c create mode 100644 public/exemplos/esp-rainmaker.c create mode 100644 public/exemplos/esp-sr.c create mode 100644 public/exemplos/esp-zigbee.c create mode 100644 public/exemplos/rust-esp.rs diff --git a/app/componentes/layout.jsx b/app/componentes/layout.jsx new file mode 100644 index 0000000..39ba854 --- /dev/null +++ b/app/componentes/layout.jsx @@ -0,0 +1,74 @@ +import { paginaMeta, jsonLd } from "@/lib/seo"; + +export const metadata = paginaMeta({ + titulo: "ESP Component Registry & IDF Component Manager · ESPDocs", + descricao: "Catálogo oficial e interativo do ESP Component Registry: drivers de displays, LVGL, reconhecimento de voz ESP-SR, RainMaker, BSPs e gerador de idf_component.yml.", + caminho: "/componentes", + keywords: [ + "ESP Component Registry", + "IDF Component Manager", + "idf_component.yml", + "idf.py add-dependency", + "componentes ESP32", + "espressif esp_lvgl_port", + "espressif esp_rainmaker", + "espressif esp-sr", + "bibliotecas ESP-IDF", + ], +}); + +const faqs = [ + { + pergunta: "O que é o ESP Component Registry e o IDF Component Manager?", + resposta: "O ESP Component Registry (components.espressif.com) é o repositório oficial de pacotes modulares da Espressif. O IDF Component Manager é a ferramenta integrada ao ESP-IDF (a partir do v4.4 e padrão no v5.x+) que baixa, compila e resolve versões de dependências automaticamente a partir do manifesto idf_component.yml.", + }, + { + pergunta: "Como adicionar um componente ao meu projeto ESP-IDF?", + resposta: "Você pode executar o comando 'idf.py add-dependency \"namespace/componente^versao\"' no terminal do projeto (por exemplo: idf.py add-dependency \"espressif/esp_lvgl_port^2.4.0\") ou editar diretamente o arquivo main/idf_component.yml.", + }, + { + pergunta: "Qual a diferença entre usar o Component Registry e git submodules?", + resposta: "O Component Registry elimina a complexidade de gerenciar submódulos Git pesados e versões manuais. Ele oferece versionamento semântico (^ e ~), resolução automática de dependências transitivas e compilação modular sob demanda.", + }, + { + pergunta: "Posso criar e publicar meus próprios componentes?", + resposta: "Sim, qualquer desenvolvedor ou empresa pode publicar componentes públicos ou privados no ESP Component Registry utilizando a ferramenta oficial Compote CLI (pip install idf-component-manager).", + }, +]; + +export default function ComponentesLayout({ children }) { + return ( + <> +