跳到正文
cccskills
免费在 GitHub 公开

electron-skills

Electron patterns for LlamaFarm Desktop. Covers main/renderer processes, IPC, security, and packaging.

中文简介正在准备中。当前显示原文说明。

实测评分 未实测

查看安装方法

包含的文件(4)

  • SKILL.md3.2 KB
  • electron.md9.3 KB
  • performance.md10.8 KB
  • security.md10.0 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Electron Skills for LlamaFarm Desktop

Electron 28 + Electron Vite patterns for the LlamaFarm Desktop application.

Overview

This skill extends typescript-skills with Electron-specific patterns for main/renderer process architecture, IPC communication, security, and performance.

Tech Stack

ComponentTechnologyPurpose
FrameworkElectron 28Desktop application framework
Buildelectron-vite 2Vite-based build for main/preload/renderer
Updateselectron-updaterAuto-update via GitHub releases
Packagingelectron-builderCross-platform packaging (macOS/Win/Linux)

Architecture

electron-app/
  src/
    main/           # Main process (Node.js context)
      index.ts      # App entry, lifecycle, IPC handlers
      backend/      # CLI installer, model downloader
      window-manager.ts
      menu-manager.ts
      logger.ts
    preload/        # Preload scripts (bridge context)
      index.ts      # contextBridge API exposure
    renderer/       # Renderer process (browser context)
      index.html    # Main window
      splash.html   # Splash screen

Core Principles

  1. Process isolation - Main, preload, and renderer are separate contexts
  2. Context isolation - Always use contextBridge.exposeInMainWorld
  3. No Node in renderer - nodeIntegration: false always
  4. Type-safe IPC - Define channel types and payload schemas
  5. Secure by default - Minimize exposed APIs in preload

Related Documents

Shared TypeScript Patterns

This skill inherits from typescript-skills:

Quick Reference

IPC Handler Pattern (Main Process)

ipcMain.handle('cli:info', async () => {
  const isInstalled = await this.cliInstaller.isInstalled()
  return {
    isInstalled,
    path: isInstalled ? this.cliInstaller.getCLIPath() : null
  }
})

Preload Bridge Pattern

const api = {
  cli: {
    getInfo: () => ipcRenderer.invoke('cli:info')
  },
  platform: process.platform,
  version: process.versions.electron
}

contextBridge.exposeInMainWorld('llamafarm', api)

BrowserWindow Configuration

new BrowserWindow({
  webPreferences: {
    preload: path.join(__dirname, '../preload/index.js'),
    nodeIntegration: false,
    contextIsolation: true
  }
})

Checklist Summary

CategoryCriticalHighMediumLow
IPC2321
Security4321
Performance1332

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

CLI best practices for LlamaFarm. Covers Cobra, Bubbletea, Lipgloss patterns for Go CLI development.

中文简介正在准备中。当前显示原文说明。

llama-farm/llamafarm8362026年6月10日 更新

Comprehensive code review for diffs. Analyzes changed code for security vulnerabilities, anti-patterns, and quality issues. Auto-detects domain (frontend/backend) from file paths.

中文简介正在准备中。当前显示原文说明。

llama-farm/llamafarm8362026年6月10日 更新

Commit changes, push to GitHub, and open a PR. Includes quality checks (security, patterns, simplification). Use --quick to skip checks.

中文简介正在准备中。当前显示原文说明。

llama-farm/llamafarm8362026年6月10日 更新

Best practices for the Common utilities package in LlamaFarm. Covers HuggingFace Hub integration, GGUF model management, and shared utilities.

中文简介正在准备中。当前显示原文说明。

llama-farm/llamafarm8362026年6月10日 更新

Configuration module patterns for LlamaFarm. Covers Pydantic v2 models, JSONSchema generation, YAML processing, and validation.

中文简介正在准备中。当前显示原文说明。

llama-farm/llamafarm8362026年6月10日 更新

Designer subsystem patterns for LlamaFarm. Covers React 18, TanStack Query, TailwindCSS, and Radix UI.

中文简介正在准备中。当前显示原文说明。

llama-farm/llamafarm8362026年6月10日 更新

查看 llama-farm 的全部技能

报告此技能的问题