Skip to content

About

Frappe Local is a cross-platform desktop app for creating and managing local Frappe benches and sites visually - without dependency management, or terminal commands.

Resources

Stars

37 stars

Watchers

5 watching

Forks

Repository files navigation

Release Dev Rolling Build

Frappe Local

Frappe Local is a cross-platform desktop app for creating and managing local Frappe benches and sites visually - without dependency management, or terminal commands.

Status

Caution

Frappe Local is currently under active development.

Features

  • Create and manage local Frappe benches visually
  • Create and manage Frappe sites without terminal commands
  • Install and manage Frappe apps
  • Run Frappe workloads inside managed Linux containers
  • Automatic local HTTPS using Caddy
  • Built-in diagnostics and setup assistance
  • Open projects directly in Visual Studio Code Dev Containers
  • Cross-platform support for macOS and Windows

Supported Platforms

OS Status Architecture Details
macOS ✅ Supported Apple Silicon & Intel (with virtualization) Install Guide
Windows ✅ Supported 64-bit (with hardware virtualization)* Install Guide
Linux 🚧 Coming Soon - Get Notified

* Frappe Local detects whether WSL2 and Virtual Machine Platform are configured and provides an in-app setup flow when required.

System Requirements

Frappe benches and app asset builds run inside Linux containers. Apps with large frontend builds may require significantly more memory than a basic Frappe bench.

Hardware

Resource Minimum Recommended
Memory 8 GB RAM 16 GB RAM for multiple benches or frontend-heavy apps
CPU 4 cores with hardware virtualization 6 or more cores
Storage 20 GB free SSD space 40 GB or more for multiple benches and apps

Systems with less than 8 GB RAM are not supported.

On macOS and Windows, Frappe Local configures its container environment to use approximately 75% of host memory while leaving memory available for the operating system.

Network

An internet connection is required during initial setup and when installing apps.

Your network must allow access to:

  • quay.io for the Podman machine image
  • Frappe and app Git repositories, including github.com
  • npm, Yarn, Python, and system package registries required by installed apps

Corporate proxies, VPNs, firewalls, or antivirus software may require exceptions for Frappe Local, Podman, WSL, and the required registries.

Optional Development Tools

  • Visual Studio Code with the Dev Containers extension is required only for the Open in Dev Container feature.
  • Git and other Frappe build dependencies run inside the managed container and do not need to be installed separately on the host.

Installation

macOS

Download the latest .dmg from GitHub Releases. Choose the file matching your Mac architecture:

  • Apple Silicon (M1/M2/M3/...): Frappe.Local-*-arm64.dmg
  • Intel (Core i5/i7/i9/...): Frappe.Local-*-x64.dmg

Open the downloaded .dmg and drag Frappe Local into the Applications folder.

Unblock Gatekeeper

Because the app is not currently signed with an Apple-trusted developer certificate, macOS may block it from opening. Open Terminal and run:

xattr -rds com.apple.quarantine /Applications/Frappe\ Local.app

This removes the macOS quarantine attribute, allowing Frappe Local to open normally.

Windows

Download the latest .exe installer from GitHub Releases.

Unblock SmartScreen

Because the installer is not currently digitally signed, Windows SmartScreen may block it. Open PowerShell in your Downloads folder and run (replacing the filename if necessary):

Unblock-File -Path ".\Frappe Local Setup-*.exe"

This removes the Mark of the Web. Alternatively: Right-click the installer > Properties > check Unblock > Apply.

Warning

Windows Defender may still quarantine the extracted .exe after installation. If the desktop shortcut shows a blank icon or a Missing Shortcut error, add an exclusion for C:\Program Files\frappe-local and run the installer again.

Linux

Linux is not supported yet. Show your interest and get notified when it's available!

First Bench Creation

Creating your first bench initializes a dedicated Podman virtual machine and downloads its Linux image from quay.io. This may take several minutes. Keep Frappe Local open until setup completes.

If setup fails: Open Diagnostics, run the checks, and use Fix where available. Diagnostic errors include the underlying Podman output to help identify issues like blocked downloads, Gatekeeper restrictions, or missing virtualization components.

Local HTTPS

Frappe Local uses Caddy to provide HTTPS for *.localhost sites. On first use, your OS may ask for permission to trust the Frappe Local certificate authority. If denied or unavailable, Frappe Local automatically falls back to HTTP to avoid invalid certificate errors.

Development

Tech Stack

  • Electron + Electron Forge
  • Vue 3 + Vite
  • TypeScript
  • Frappe UI + Tailwind CSS
  • Podman - dedicated VM for Frappe containers
  • Caddy - local HTTPS reverse proxy

Prerequisites

  • Node.js (tested with v22)
  • npm

Getting Started

npm install
npm start

App Catalog

Frappe Local dynamically fetches its list of available Frappe apps from Frappe Brewery.

Registry:

https://frappe-brewery.lubus.in/index/apps.json

The registry is automatically downloaded into the bin/ directory as a build asset during npm install and parsed at runtime. The generated registry file is excluded from version control.

Scripts

  • npm start - launch Electron app in development mode
  • npm run lint - run ESLint
  • npm run lint:fix - auto-fix lint issues where possible
  • npm run typecheck - run TypeScript checks
  • npm run test - run Vitest suite
  • npm run release - build and validate platform release artifacts
  • npm run icons:generate - auto-generate platform icons
  • npm run dev:reset-state - factory reset development environment

Project Structure

  • src/main - Electron main process
  • src/main/preload.ts - preload bridge
  • src/renderer - Vue renderer app
  • src/shared - shared contracts/types between processes
  • tests - unit/integration tests

More Frappe Tools

Explore more open-source tools we're building for the Frappe ecosystem.

Frappe Playground
Run Frappe entirely in your browser.
Frappe Brewery
Discover community-built apps for Frappe.
Frappe Vault
Manage secrets and passwords with Frappe.
WP Frappe Data Store
Connect WordPress and Frappe with a React data store.

Explore all LUBUS projects →

Meet Your Artisans

LUBUS is a web design agency based in Mumbai.

License

Frappe Local is open-sourced licensed under the MIT License.

About

Frappe Local is a cross-platform desktop app for creating and managing local Frappe benches and sites visually - without dependency management, or terminal commands.

Resources

Stars

37 stars

Watchers

5 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages