deskify-cli 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +15 -20
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -28,13 +28,13 @@ Running websites as desktop applications in Linux is fantastic for productivity,
28
28
 
29
29
  ## Features
30
30
 
31
- - 🖥️ **Interactive Wizard**: No command arguments to memorize. Simply type `deskify` and follow the beautiful, colorized prompts.
32
- - 🔗 **Smart Defaults**: Enter any URL (e.g., `https://panggon.danyakmallun.dev`) and Deskify will automatically extract the app name, domain, and set up domain boundary regexes (`.*panggon\.danyakmallun\.dev.*`) so links inside the app stay inside, and outside links open in your default browser.
33
- - 🎨 **Favicon Auto-Downloader**: Automatically downloads and configures the highest quality favicon from Google APIs to use as the app launcher icon.
34
- - 🔑 **Auto-Sandbox Permission Fix**: Automatically runs `sudo chown root:root` and `sudo chmod 4755` on `chrome-sandbox` inside the interactive terminal, ensuring the app boots successfully.
35
- - 🎯 **Dynamic StartupWMClass Tracking**: Automatically parses the generated `package.json` inside the Electron source code, extracts the unique Nativefier build hash, and writes the correct `StartupWMClass` to ensure application launcher matching in your system app menu and dock.
36
- - 📦 **App Directory Organization**: Moves the generated packages out of your home directory and places them inside a clean `~/Apps` folder (or custom directory).
37
- - **Zero-Dependency**: Written purely in native Node.js API. No `node_modules` required to download or run.
31
+ - **Interactive Wizard**: No command arguments to memorize. Simply type `deskify` and follow the beautiful, colorized prompts.
32
+ - **Smart Defaults**: Enter any URL (e.g., `https://panggon.danyakmallun.dev`) and Deskify will automatically extract the app name, domain, and set up domain boundary regexes (`.*panggon\.danyakmallun\.dev.*`) so links inside the app stay inside, and outside links open in your default browser.
33
+ - **Favicon Auto-Downloader**: Automatically downloads and configures the highest quality favicon from Google APIs to use as the app launcher icon.
34
+ - **Auto-Sandbox Permission Fix**: Automatically runs `sudo chown root:root` and `sudo chmod 4755` on `chrome-sandbox` inside the interactive terminal, ensuring the app boots successfully.
35
+ - **Dynamic StartupWMClass Tracking**: Automatically parses the generated `package.json` inside the Electron source code, extracts the unique Nativefier build hash, and writes the correct `StartupWMClass` to ensure application launcher matching in your system app menu and dock.
36
+ - **App Directory Organization**: Moves the generated packages out of your home directory and places them inside a clean `~/Apps` folder (or custom directory).
37
+ - **Zero-Dependency**: Written purely in native Node.js API. No `node_modules` required to download or run.
38
38
 
39
39
  ---
40
40
 
@@ -84,19 +84,14 @@ npm install -g .
84
84
 
85
85
  ## How It Works
86
86
 
87
- ```mermaid
88
- graph TD
89
- A[User Types URL & Name] --> B[Pre-flight Check: Node/NPM/Apt]
90
- B --> C[Auto-download High-Res Favicon]
91
- C --> D[Compile Webapp via Nativefier]
92
- D --> E[Move app package to ~/Apps/]
93
- E --> F[Parse generated package.json for Name & Hash]
94
- F --> G[Reconstruct exact StartupWMClass]
95
- G --> H[Run Sudo chmod/chown on chrome-sandbox]
96
- H --> I[Generate ~/.local/share/applications/App.desktop]
97
- I --> J[Run update-desktop-database]
98
- J --> K[App appears in System Search & Dock with proper icon!]
99
- ```
87
+ Deskify automates the following sequence:
88
+ 1. **Pre-flight Checks**: Verifies Node.js, NPM, and system dependencies are available.
89
+ 2. **Icon Extraction**: Automatically crawls or queries high-resolution favicons for your application.
90
+ 3. **Compilation**: Packages the web app into an Electron wrapper via Nativefier.
91
+ 4. **App Organization**: Places the package folders inside a clean `~/Apps` installation directory.
92
+ 5. **StartupWMClass Mapping**: Parses the package details to map window instances correctly to the taskbar icon.
93
+ 6. **Sandbox Configuration**: Sets the appropriate root permissions on the Chrome sandbox binary.
94
+ 7. **Shortcut Registration**: Creates the launcher database entry (`.desktop`) and updates GNOME shortcuts.
100
95
 
101
96
  ---
102
97
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "deskify-cli",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "An interactive, zero-dependency CLI tool to turn web pages into Linux desktop applications using Nativefier.",
5
5
  "main": "deskify.js",
6
6
  "bin": {