SkillAgentSearch skills...

PHPulse

PHP wrapper for desktop Development

Install / Use

/learn @ibnsultan/PHPulse
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<div style="width:100%;text-align:center"> <img src="https://raw.githubusercontent.com/ibnsultan/PHPulse/main/builder/assets/build/logo.png" alt="PHPulse Logo" width="60" height="60" /> </div>

PHPulse

PHPulse is an experimental PHP framework designed specifically for constructing desktop applications.

While currently in its proof-of-concept stage, it's important to note that using PHPulse for production development is not recommended at this time.

🛠️ Supported Platforms

  • ✅ Windows
  • ☑️ Linux (Limited Support) some component are not yet complete ref (TODO. builder/main.js ln:12)
  • ❌ Mac OS (Very Limited Support) some component are not yet complete ref (TODO. builder/main.js ln:12)

🧰 Tools Utilized

  • PHP
  • Electron
  • NodeJS 18 LTS

🚦 Project Overview

PHPulse combines the power of PHP and Electron to create desktop applications efficiently. With the right configuration any app can be swiftly packaged

The initial skeleton comes with a basic router to handle and designate http request to their respective allocations public/router.php which also the default entry of the application

Folder Structure

📁 ProjectName
|-- 🌐 backend (where your backend resides)
|-- 🛠 builder
|   |-- 🖼 assets
|   |   |-- 🏗 build
|   |-- 📜 main.js
|   |-- 📄 config.json
|   |-- 📦 package.json
|
|-- ⚙️ console
|   |-- 🐘 engine.php
|   |-- 🤖 helper.php
|
|-- 📦 vendor
|
|-- 📄 .gitignore
|-- 📦 composer.json
|-- 📄 config.json
|-- 🚀 pulsar

😎 Getting Started

  • Dowload the latest release from the release section

  • Install the dependencies

    composer install
    cd builder && npm install
    
  • Initialize your application

    php pulsar init
    

    An interactive cli form will be displayed to configure your application details

  • To test and debug ur app run

    php pulsar serve
    
  • Prepare your application for building

    # Update files in builder directory
    php pulsar prepare
    
    # Fresh start - clean and rebuild
    php pulsar prepare --fresh
    
  • To build the app run

    # Build for current platform (auto-detected)
    php pulsar make
    
    # Build for specific platform
    php pulsar make --platform=win
    php pulsar make --platform=mac
    php pulsar make --platform=linux
    
    # Build for all platforms
    php pulsar make --platform=all
    

    Note: Architecture (32-bit/64-bit) is automatically determined by electron-builder based on the target platform. On 64 it will build for both 32 and 64 bit, while on 32 it will only build for 32 bit.

✨ Using a custom project

Make sure to inialize your project php pulsar init and also change your config.json: entry_point and config.json: entry_file based on your project requirements and structure

Ps: MVC projects like laravel don't need an entry file as the framework will handle the routing and request handling, you may need to leave the entry_file empty and just set the entry point to your public folder i.e backend/public

🚧 Roadmap

  • [X] Migrated from electron-packager to electron-builder
  • [ ] Using asar packaging for better performance and smaller size
  • [ ] Compressing php source to phar
  • [ ] PHP Code obfusications
  • [ ] Cross-platform build support from any OS

Contributing

All contributions, issues and feature requests are welcome! Feel free to check issues page.

Related Skills

View on GitHub
GitHub Stars6
CategoryDevelopment
Updated24d ago
Forks0

Languages

PHP

Security Score

70/100

Audited on Mar 5, 2026

No findings