Pular para o conteúdo
Skillpedia
Sites e telas (frontend)48 mil · #3537

makepad-platform

Ajuda seu agente a garantir que o aplicativo Makepad funcione em diferentes sistemas operacionais e plataformas. Útil para alcançar um público mais amplo.

O que ela faz

Esta ferramenta ajuda a entender e escrever código para diferentes sistemas operacionais (como Windows, macOS, Linux, Android, iOS e Web) usando a plataforma Makepad. Ela explica quais sistemas são suportados e como o código se adapta a cada um.

Quando usar

  • ✓Quando você quer saber em quais sistemas (celular, computador, web) seu aplicativo Makepad pode rodar.
  • ✓Se você precisa escrever partes do código que funcionam apenas em um sistema específico (ex: só no Windows).
  • ✓Para entender como o Makepad usa diferentes tecnologias gráficas (como Metal, OpenGL) em cada sistema.

Exemplo do que pedir para a IA

“Como faço para meu aplicativo Makepad funcionar no Android e também no navegador web?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/makepad-platform/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/makepad-platform/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A IA verifica as informações sobre as plataformas suportadas pelo Makepad e como o código pode ser adaptado. Ela usa tanto o conhecimento geral sobre o Makepad quanto informações específicas de arquivos de documentação, se disponíveis.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill makepad-platform

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/makepad-platform/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Disponibilidade de Material de Apoio

Este texto do catálogo contém as orientações embutidas abaixo, mas não inclui os seguintes caminhos de suporte. Eles são pré-requisitos externos, não arquivos empacotados:

  • ./references/platform-support.md

Solicite o material de apoio original ou uma instalação existente antes de usar uma etapa que dependa desses caminhos; este catálogo não identifica uma fonte de download verificada para eles. Resolva cada caminho em relação a essa instalação, inspecione seu conteúdo e verifique quaisquer licenças e pré-requisitos de execução aplicáveis. Não execute um comando ou afirme que um procedimento referenciado foi seguido até que seu arquivo necessário exista. Não crie os scripts ausentes nem trate um arquivo não relacionado com o mesmo nome como equivalente. Etapas independentes totalmente documentadas aqui podem prosseguir dentro do escopo autorizado do usuário; relate qualquer etapa dependente como indisponível.

Habilidade da Plataforma Makepad

Versão: makepad-widgets (branch dev) | Última Atualização: 2026-01-19

Verifique atualizações: https://crates.io/crates/makepad-widgets

Você é um especialista em desenvolvimento multiplataforma Makepad. Ajude os usuários:

  • Entendendo plataformas: Explique plataformas e backends suportados
  • Código específico da plataforma: Ajude com compilação condicional e APIs de plataforma

Quando Usar

  • Você precisa entender ou direcionar plataformas e backends gráficos específicos no Makepad.
  • A tarefa envolve compatibilidade de plataforma, compilação condicional ou comportamento específico do sistema operacional em desktop, mobile ou web.
  • Você precisa de orientação sobre diferenças de backend como Metal, D3D11, OpenGL, WebGL ou módulos de plataforma.

Documentação

Consulte os arquivos locais para documentação detalhada:

  • ./references/platform-support.md - Detalhes da plataforma e OsType

IMPORTANTE: Verificação de Completude da Documentação

Antes de responder às perguntas, Claude DEVE:

  1. Ler o(s) arquivo(s) de referência relevante(s) listado(s) acima
  2. Se a leitura do arquivo falhar ou o arquivo estiver vazio:
    • Informe o usuário: "本地文档不完整,建议运行 /sync-crate-skills makepad --force 更新文档"
    • Ainda assim, responda com base nos padrões do SKILL.md + conhecimento interno
  3. Se o arquivo de referência existir, incorpore seu conteúdo à resposta

Plataformas Suportadas

Plataforma Backend Gráfico Módulo do SO
macOS Metal apple/metal_*.rs, apple/cocoa_*.rs
iOS Metal apple/metal_*.rs, apple/ios_*.rs
Windows D3D11 mswindows/d3d11_*.rs, mswindows/win32_*.rs
Linux OpenGL linux/opengl_*.rs, linux/x11*.rs, linux/wayland*.rs
Web WebGL2 web/*.rs, web_browser/*.rs
Android OpenGL ES android/*.rs
OpenHarmony OHOS open_harmony/*.rs
OpenXR VR/AR open_xr/*.rs

Enum OsType

pub enum OsType {
    Unknown,
    Windows,
    Macos,
    Linux { custom_window_chrome: bool },
    Ios,
    Android(AndroidParams),
    OpenHarmony,
    Web(WebParams),
    OpenXR,
}

// Check platform in code
fn handle_event(&mut self, cx: &mut Cx, event: &Event) {
    match cx.os_type() {
        OsType::Macos => { /* macOS-specific */ }
        OsType::Windows => { /* Windows-specific */ }
        OsType::Web(_) => { /* Web-specific */ }
        _ => {}
    }
}

Detecção de Plataforma

// In Cx
impl Cx {
    pub fn os_type(&self) -> OsType;
    pub fn gpu_info(&self) -> &GpuInfo;
    pub fn xr_capabilities(&self) -> &XrCapabilities;
    pub fn cpu_cores(&self) -> usize;
}

Compilação Condicional

// Compile-time platform detection
#[cfg(target_os = "macos")]
fn macos_only() { }

#[cfg(target_os = "windows")]
fn windows_only() { }

#[cfg(target_os = "linux")]
fn linux_only() { }

#[cfg(target_arch = "wasm32")]
fn web_only() { }

#[cfg(target_os = "android")]
fn android_only() { }

#[cfg(target_os = "ios")]
fn ios_only() { }

Recursos Específicos da Plataforma

Desktop (macOS/Windows/Linux)

  • Gerenciamento de janelas (redimensionar, minimizar, maximizar)
  • Caixas de diálogo de arquivos
  • Menu do sistema
  • Arrastar e soltar
  • Múltiplos monitores

Mobile (iOS/Android)

  • Entrada por toque
  • Teclado virtual
  • Orientação da tela
  • Ciclo de vida do aplicativo (primeiro plano/segundo plano)

Web (WebGL2)

  • Integração com DOM
  • Eventos do navegador
  • Armazenamento local
  • Requisições HTTP

Ponto de Entrada

// Macro de entrada do aplicativo
app_main!(App);

pub struct App {
    ui: WidgetRef,
}

impl LiveRegister for App {
    fn live_register(cx: &mut Cx) {
        // Registrar componentes
        crate::makepad_widgets::live_design(cx);
    }
}

impl AppMain for App {

…
Perguntas frequentes

O que são 'backends gráficos'?

São as tecnologias que o Makepad usa para desenhar na tela em cada sistema. Exemplos são Metal (para Apple), D3D11 (para Windows) e OpenGL (para Linux e Android).

Como o código sabe em qual sistema ele está rodando?

Existem duas formas: o código pode verificar em tempo de execução (quando o programa está rodando) usando `cx.os_type()`, ou em tempo de compilação (antes do programa ser criado) usando `#[cfg(target_os = '...')`.

O que significa 'Makepad cross-platform'?

Significa que o Makepad permite que você escreva um código que funciona em vários sistemas operacionais diferentes (computador, celular, web) sem precisar reescrever tudo para cada um.

Detalhes

Descrição original do autor

CRITICAL: Use for Makepad cross-platform support. Triggers on: makepad platform, makepad os, makepad macos, makepad windows, makepad linux, makepad android, makepad ios, makepad web, makepad wasm, makepad metal, makepad d3d11, makepad opengl, makepad webgl, OsType, CxOs, makepad 跨平台, makepad 平台支持

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3537
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas