You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/copilot-instructions.md
+67-16Lines changed: 67 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,9 +1,9 @@
1
1
# DevBox Pro - AI Coding Agent Instructions
2
2
3
3
## Project Overview
4
-
DevBox Pro is an Electron desktop app providing a local PHP development environment with bundled services (PHP, MySQL/MariaDB, Redis, Nginx/Apache, etc.). No Docker required.
4
+
DevBox Pro is an Electron desktop app for local PHP and Node.js development with bundled runtimes and services. It supports multi-version PHP, Node.js, MySQL, MariaDB, Redis, PostgreSQL, MongoDB, Nginx, Apache, Mailpit, phpMyAdmin, MinIO, Memcached, and related tooling without Docker.
5
5
6
-
**Tech Stack:** Electron 28 + React 18 + Vite + TailwindCSS
6
+
**Tech Stack:** Electron 40 + React 19 + Vite 7 + TailwindCSS 4
7
7
8
8
## Architecture
9
9
@@ -13,16 +13,30 @@ DevBox Pro is an Electron desktop app providing a local PHP development environm
13
13
-**Communication**: All cross-process calls go through IPC via `preload.js` → `window.devbox.*` API
14
14
-**Shared Config** (`src/shared/serviceConfig.js`): Single source of truth for service versions and ports
15
15
16
-
### Manager Pattern (src/main/services/)
17
-
Each service domain has a dedicated manager class initialized in `main.js`:
**Run legacy and modern PHP & Node.js apps side by side — no conflicts, no headaches**
10
+
**Run legacy and modern PHP and Node.js apps side by side with isolated runtimes, bundled services, and zero Docker setup.**
11
11
12
-
Maintaining an old PHP 7.4 project while building a new Laravel 11 app on PHP 8.5? Running a Next.js frontend alongside a PHP backend? DevBox Pro makes it effortless. Unlike traditional setups, you can **run multiple PHP and Node.js versions simultaneously** — giving you the freedom to work on legacy applications alongside cutting-edge projects without switching environments or breaking dependencies.
12
+
Maintaining an old PHP 7.4 project while building a new Laravel 11 app on PHP 8.5? Running a Next.js frontend alongside a PHP backend? DevBox Pro is built for exactly that workflow. It lets you run multiple PHP, Node.js, database, and web server versions at the same time, with per-project configuration, automatic local domains, compatibility warnings, and bundled tooling.
13
13
14
-
DevBox Pro bundles everything you need: PHP 7.4 through 8.5, Node.js 16 through 24, MySQL, MariaDB, Redis, Nginx, Apache, and more — all in one standalone desktop app. No Docker, no complex configurations, just instant multi-version development.
14
+
DevBox Pro is an Electron desktop app with a React renderer and a Node.js main process. It manages PHP, Node.js, MySQL, MariaDB, Redis, Nginx, Apache, PostgreSQL, MongoDB, MinIO, Memcached, Mailpit, phpMyAdmin, Composer, Git, and more from one local interface.
15
15
16
16
---
17
17
18
18
## ✨ Features
19
19
20
20
### 🐘 Multi-PHP Version Support
21
-
-**PHP 7.4, 8.0, 8.1, 8.2, 8.3, 8.4, 8.5** - Run any version side by side
21
+
-**PHP 7.4, 8.0, 8.1, 8.2, 8.3, 8.4, 8.5** - Run multiple versions side by side
22
22
- Per-project PHP version selection with compatibility validation
23
23
- Easy extension management per version with php.ini editor
24
24
- Pre-configured for optimal performance
@@ -32,7 +32,7 @@ DevBox Pro bundles everything you need: PHP 7.4 through 8.5, Node.js 16 through
# Start the Electron app with the Vite renderer dev server
183
190
npm run dev
184
191
185
-
# Build for production
186
-
npm run build
192
+
# Build the renderer bundle only
193
+
npm run build:renderer
187
194
188
-
# Create distribution package
189
-
npm run dist
195
+
# Build platform packages
196
+
npm run build:win
197
+
npm run build:mac
198
+
npm run build:all
190
199
```
191
200
201
+
The renderer dev server runs at `http://localhost:3000`.
202
+
192
203
### Testing
193
204
194
-
DevBox Pro includes a comprehensive test suite covering Unit, Integration, and End-to-End (E2E) scenarios.
205
+
DevBox Pro includes unit, integration, and end-to-end coverage.
195
206
196
207
```bash
197
208
# Run all tests
@@ -207,7 +218,7 @@ npm run test:renderer
207
218
npm run test:e2e
208
219
```
209
220
210
-
The E2E tests are built using Playwright and cover the full project lifecycle, database workflows, binary downloads, SSL configuration, and settings persistence.
221
+
The test suite covers the main-process managers, the renderer, and Playwright end-to-end scenarios for project creation, binaries, databases, SSL, and settings persistence.
| Apache HTTP | 8081 when Apache is not the front-door server |
312
+
| Apache HTTPS | 8444 when Apache is not the front-door server |
313
+
314
+
Web server ownership is dynamic. The first active web server can claim ports `80` and `443`, while the other is assigned alternate ports and proxied automatically.
0 commit comments