electron-skills
π―Skillfrom llama-farm/llamafarm
Configures secure Electron desktop application architecture with isolated processes, type-safe IPC, and cross-platform packaging for LlamaFarm.
Installation
npx skills add https://github.com/llama-farm/llamafarm --skill electron-skillsSkill Details
Electron patterns for LlamaFarm Desktop. Covers main/renderer processes, IPC, security, and packaging.
Overview
# Electron Skills for LlamaFarm Desktop
Electron 28 + Electron Vite patterns for the LlamaFarm Desktop application.
Overview
This skill extends [typescript-skills](../typescript-skills/SKILL.md) with Electron-specific patterns for main/renderer process architecture, IPC communication, security, and performance.
Tech Stack
| Component | Technology | Purpose |
|-----------|------------|---------|
| Framework | Electron 28 | Desktop application framework |
| Build | electron-vite 2 | Vite-based build for main/preload/renderer |
| Updates | electron-updater | Auto-update via GitHub releases |
| Packaging | electron-builder | Cross-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
- Process isolation - Main, preload, and renderer are separate contexts
- Context isolation - Always use
contextBridge.exposeInMainWorld - No Node in renderer -
nodeIntegration: falsealways - Type-safe IPC - Define channel types and payload schemas
- Secure by default - Minimize exposed APIs in preload
Related Documents
- [electron.md](./electron.md) - IPC patterns, main/renderer communication
- [security.md](./security.md) - Context isolation, preload security, CSP
- [performance.md](./performance.md) - Window management, memory, startup
Shared TypeScript Patterns
This skill inherits from [typescript-skills](../typescript-skills/SKILL.md):
- [patterns.md](../typescript-skills/patterns.md) - Idiomatic TypeScript
- [typing.md](../typescript-skills/typing.md) - Strict typing, generics
- [security.md](../typescript-skills/security.md) - Input validation, XSS prevention
Quick Reference
IPC Handler Pattern (Main Process)
```typescript
ipcMain.handle('cli:info', async () => {
const isInstalled = await this.cliInstaller.isInstalled()
return {
isInstalled,
path: isInstalled ? this.cliInstaller.getCLIPath() : null
}
})
```
Preload Bridge Pattern
```typescript
const api = {
cli: {
getInfo: () => ipcRenderer.invoke('cli:info')
},
platform: process.platform,
version: process.versions.electron
}
contextBridge.exposeInMainWorld('llamafarm', api)
```
BrowserWindow Configuration
```typescript
new BrowserWindow({
webPreferences: {
preload: path.join(__dirname, '../preload/index.js'),
nodeIntegration: false,
contextIsolation: true
}
})
```
Checklist Summary
| Category | Critical | High | Medium | Low |
|----------|----------|------|--------|-----|
| IPC | 2 | 3 | 2 | 1 |
| Security | 4 | 3 | 2 | 1 |
| Performance | 1 | 3 | 3 | 2 |
More from this repository10
Generates specialized Claude Code skills for each subsystem, creating shared language and subsystem-specific checklists to optimize AI code generation across the monorepo.
Implements robust RAG document processing and retrieval using LlamaIndex, ChromaDB, and Celery for efficient, scalable AI document workflows.
Manages shared Python utilities for LlamaFarm, focusing on HuggingFace model handling, GGUF file management, and cross-service consistency.
Enforces Go best practices and idiomatic patterns for secure, maintainable LlamaFarm CLI development.
Enforces strict TypeScript best practices for React and Electron frontend applications, ensuring type safety, immutability, and clean code patterns.
Provides comprehensive Go CLI development guidelines using Cobra, Bubbletea, and Lipgloss for creating robust, interactive command-line interfaces in LlamaFarm projects.
Automates git workflow by committing changes, pushing to GitHub, and opening a PR with intelligent checks and handling of edge cases.
Provides server-side best practices and code review guidelines for FastAPI, Celery, and Pydantic frameworks in Python.
Generates temporary files in a structured system directory, ensuring clean organization and easy tracking of generated reports and logs.
Optimizes ML inference runtime with best practices for PyTorch, Transformers, and FastAPI, focusing on device management, model loading, and performance tuning.