# Nativefier — Turn Any Web Page into a Desktop Application > A command-line tool that wraps any web page into an Electron-based desktop app with minimal configuration. ## Install Save in your project root: # Nativefier — Turn Any Web Page into a Desktop Application ## Quick Use ```bash npm install -g nativefier nativefier "https://web.whatsapp.com" nativefier --name "My App" --icon icon.png "https://example.com" ``` ## Introduction Nativefier is a command-line tool that creates desktop applications from any web URL using Electron. It generates a standalone executable for macOS, Windows, or Linux with a single command, providing a native-like experience for web apps that lack an official desktop client. ## What Nativefier Does - Wraps any URL into a standalone Electron desktop application - Generates platform-specific binaries for macOS, Windows, and Linux - Injects custom CSS and JavaScript into the wrapped page - Supports system tray integration, badge counts, and keyboard shortcuts - Handles internal and external link navigation rules ## Architecture Overview Nativefier is a Node.js CLI that orchestrates Electron Packager under the hood. When invoked, it downloads the target Electron runtime, creates a browser window pointed at the given URL, applies user-specified options (icon, name, user agent, injected scripts), and packages everything into a distributable app bundle or executable. ## Self-Hosting & Configuration - Install globally via npm: `npm install -g nativefier` - Requires Node.js 12+ and a working internet connection during build - Customize the app name, icon, and window dimensions via CLI flags - Inject CSS with `--inject style.css` or JS with `--inject script.js` - Use `--single-instance` to prevent multiple windows of the same app ## Key Features - One-command conversion from URL to desktop app - Custom user agent strings for mobile or desktop rendering - Built-in ad-blocking via Electron's content filtering - Flash and Widevine plugin support for DRM-protected sites - Internal URL regex to control which links open inside the app vs. the default browser ## Comparison with Similar Tools - **Pake** — Rust-based alternative producing smaller binaries via system WebView instead of bundled Chromium - **Tauri** — Full framework for building desktop apps with web frontends and a Rust backend - **Electron** — The underlying runtime; Nativefier automates its packaging - **WebCatalog** — GUI-based app that wraps websites into desktop apps without CLI - **Flotato** — macOS-only web-app wrapper with a lightweight native shell ## FAQ **Q: Is Nativefier still maintained?** A: The project is in maintenance mode and the author recommends alternatives like Pake or Tauri for new projects. Existing builds continue to work. **Q: How large are the generated apps?** A: Apps bundle a full Chromium runtime, so they typically range from 120 MB to 200 MB depending on the platform. **Q: Can I update the wrapped app without rebuilding?** A: The app always loads the live URL, so web content updates automatically. To change Nativefier options or the Electron version, you need to rebuild. **Q: Does Nativefier work with sites that require login?** A: Yes. Session cookies persist between launches, so you only need to log in once. ## Sources - https://github.com/nativefier/nativefier - https://github.com/nicedoc/nativefier-apps --- Source: https://tokrepo.com/en/workflows/asset-982ce5da Author: AI Open Source