Skip to content
Open

V2 #698

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
561 commits
Select commit Hold shift + click to select a range
4b90097
Add PHP server exception reporting (#121)
simonhamp Nov 3, 2024
74ed980
Fix + code style
simonhamp Nov 4, 2024
7dbde63
Update CHANGELOG
simonhamp Nov 4, 2024
bdcf52e
Add `native:dev` script on install
simonhamp Nov 4, 2024
62e1678
Fix styling
simonhamp Nov 4, 2024
aa9f9c7
Don't overwrite
simonhamp Nov 5, 2024
2e8d53f
Stop native:dev when the app quits
simonhamp Nov 5, 2024
417ba8e
Update CHANGELOG
simonhamp Nov 5, 2024
d9c76b0
fix
simonhamp Nov 5, 2024
1069845
Update CHANGELOG
simonhamp Nov 5, 2024
d0ac6df
Add note
simonhamp Nov 5, 2024
058d5a8
Fix styling
simonhamp Nov 5, 2024
ebd1336
Improve serve via install
simonhamp Nov 5, 2024
3cf1b6f
Fix styling
simonhamp Nov 5, 2024
502bfe5
[BUG] Change the relative path to the application in order to make it…
JCombee Nov 10, 2024
304c328
Improve child process (#123)
SRWieZ Nov 11, 2024
b1a66e3
Fix powerMonitor events (#122)
SRWieZ Nov 11, 2024
d0b2dfc
Update CHANGELOG
simonhamp Nov 11, 2024
483dfe3
remove commented env merge (#126)
gwleuverink Nov 12, 2024
ab68e8f
Create build-plugin.yml (#127)
simonhamp Nov 12, 2024
20d2042
Build plugin
simonhamp Nov 12, 2024
0450e7a
Update build-plugin.yml
simonhamp Nov 12, 2024
403b29c
Make the queue worker work (#128)
simonhamp Nov 12, 2024
e5e2a3d
Build plugin
simonhamp Nov 12, 2024
1aadd5f
Update CHANGELOG
simonhamp Nov 13, 2024
6ee19ca
MenuBar improvements (#131)
simonhamp Nov 14, 2024
4b38962
Build plugin
simonhamp Nov 14, 2024
f7d4abc
Update CHANGELOG
simonhamp Nov 14, 2024
7bf52d9
chore - delete native:queue (#130)
JustinLawrenceMS Nov 14, 2024
648c277
Fix styling
simonhamp Nov 14, 2024
8cba5c8
Fix some MenuBar quirks (#133)
simonhamp Nov 15, 2024
0ef5a30
Build plugin
simonhamp Nov 15, 2024
860eddf
Pass click event parameters correctly (#134)
simonhamp Nov 15, 2024
1b56529
Build plugin
simonhamp Nov 15, 2024
ff9c48f
Fix / Forward native ENV variables to child process (#129)
gwleuverink Nov 17, 2024
1c987c6
Update CHANGELOG
simonhamp Nov 17, 2024
91bbbec
Fix script identity (#136)
simonhamp Nov 19, 2024
124756b
Delete resources/js/README.md
simonhamp Nov 22, 2024
a373b0b
feature: add clear endpoint to settings (#141)
SRWieZ Nov 25, 2024
1cdb27a
Build plugin
simonhamp Nov 25, 2024
41e4650
Dock goodies (#138)
simonhamp Nov 26, 2024
5bc2582
Build plugin
simonhamp Nov 26, 2024
baae218
MenuBars continued (#137)
simonhamp Nov 26, 2024
5bea8c2
Build plugin
simonhamp Nov 26, 2024
ce7b02c
Menu improvements (#139)
simonhamp Dec 1, 2024
22a5e48
Build plugin
simonhamp Dec 1, 2024
0e1cb65
Feature/context menu helper (#140)
gwleuverink Dec 1, 2024
c1fc491
Build plugin
simonhamp Dec 1, 2024
b6f48d3
Cleanup (#142)
simonhamp Dec 7, 2024
7f7013e
latest.yml overwritten when building multiple architectures (#145)
Dec 18, 2024
b51f8a4
Fixes and improvements to powerMonitor (#143)
SRWieZ Dec 18, 2024
2156a83
Build plugin
simonhamp Dec 18, 2024
ecbf1b8
Update CHANGELOG
simonhamp Dec 19, 2024
c0f5bf2
Remove queue worker initialization (#149)
XbNz Dec 26, 2024
51f7750
close print window before freeing mem (#146)
labomatik Dec 26, 2024
d5e7c28
Build plugin
simonhamp Dec 26, 2024
8e4f571
fix: all test suites (#148)
SRWieZ Dec 26, 2024
a2bde07
Build plugin
simonhamp Dec 26, 2024
0ef239b
Fix menubar not ready (#150)
SRWieZ Dec 29, 2024
e14d68e
Add support for window.show() (#151)
curtisblackwell Dec 29, 2024
66af0fe
Build plugin
simonhamp Dec 29, 2024
9c9d369
chore: cleaning + major versions upgrade (#147)
SRWieZ Dec 31, 2024
049dbdc
Add security header
simonhamp Jan 2, 2025
f509998
Fix window /show
simonhamp Jan 2, 2025
58eb865
Bump deps/fix names
simonhamp Jan 2, 2025
1fd6d18
Build plugin
simonhamp Jan 2, 2025
7f58f5a
Simplify menubars that are just menus
simonhamp Jan 2, 2025
f5d9dc6
Build plugin
simonhamp Jan 2, 2025
ecca7dd
fix: menubar tray state (#156)
SRWieZ Jan 21, 2025
42026e6
Add Windows support and deep linking configuration (#158)
JulianaChiabai Jan 21, 2025
b0718db
fix: kill tree php server (#157)
SRWieZ Jan 21, 2025
46bbc5c
Update CHANGELOG
simonhamp Jan 21, 2025
9381aa7
Ensures 1.0.0-beta.1 or higher is required in v1 for laravel package …
PeteBishwhip Jan 23, 2025
4066df9
Bump dependabot/fetch-metadata from 2.2.0 to 2.3.0
dependabot[bot] Jan 27, 2025
38a2613
Merge pull request #160 from NativePHP/dependabot/github_actions/depe…
github-actions[bot] Jan 27, 2025
2170fe6
Bump aglipanci/laravel-pint-action from 2.4 to 2.5
dependabot[bot] Feb 3, 2025
45d9f99
Merge pull request #161 from NativePHP/dependabot/github_actions/agli…
github-actions[bot] Feb 3, 2025
b0a8aee
Add endpoint to resize MenuBar window (#163)
dnkmdg Feb 13, 2025
d978aa5
Update logic to ensure TTY mode is appropriately disabled (#162)
PeteBishwhip Feb 17, 2025
f50b9d1
fix: notification click event handling (#170)
SRWieZ Feb 21, 2025
346a442
fix: update nativephp/laravel version constraint to allow all version…
SRWieZ Feb 21, 2025
d8537f5
Expand notification api with reference and more events (#168)
andreascreten Feb 21, 2025
53da359
enhancement / address build command papercuts (#153)
gwleuverink Feb 21, 2025
bda3296
feat: test pull request against plugin building (#172)
SRWieZ Feb 22, 2025
df970bc
Pre & Post Build Command Support (#167)
PeteBishwhip Feb 22, 2025
f499539
fix: linting workflow (#173)
SRWieZ Feb 23, 2025
46e6901
fix: deepLinkProtocol (#171)
SRWieZ Feb 24, 2025
eac69c2
Support Laravel 12.x & PHP 8.4 (#166)
SRWieZ Feb 25, 2025
1d237a1
Ensure php-bin is removed from built app (#175)
PeteBishwhip Feb 27, 2025
dc32686
Skip errors when copying files during build (#176)
gwleuverink Feb 28, 2025
fa21cfe
Copy latest certificate on before build (#177)
gwleuverink Feb 28, 2025
258cbc3
Basic Build Command cleanup (#178)
PeteBishwhip Mar 1, 2025
2bdf295
feat: native:bundle command
SRWieZ Mar 4, 2025
08a3726
feat: native:bundle --clear
SRWieZ Mar 4, 2025
a2f9888
feat: php.ts run with bundle
SRWieZ Mar 4, 2025
3535d22
fix: require nativephp/laravel on dev-feat/bundle-builds
SRWieZ Mar 4, 2025
b9c6ccf
wip: bundle cached services?
SRWieZ Mar 4, 2025
37eca6a
wip: try with everything first
SRWieZ Mar 4, 2025
613d955
wip: fix .env missing
SRWieZ Mar 4, 2025
666f68b
fix: bundling
SRWieZ Mar 5, 2025
130323a
feat: bundling a base L12 app works 🎉
SRWieZ Mar 5, 2025
e920c44
feat: native:reset command
SRWieZ Mar 10, 2025
b3ecbf6
fix: realpath() returns false if the directory does not exists
SRWieZ Mar 10, 2025
bb7b06a
feat: failsafe
SRWieZ Mar 10, 2025
15de455
wip: it works, but need some minor cleaning/refactoring/testing
SRWieZ Mar 10, 2025
13545c7
Update composer.json
simonhamp Mar 10, 2025
118c85e
perf: fixes and perf of Laravel on subsequent launches
SRWieZ Mar 11, 2025
e3010a0
Merge pull request #180 from NativePHP/constraints
simonhamp Mar 11, 2025
5724b18
fix: running the bundle in dev mode
SRWieZ Mar 11, 2025
72b29df
fix: consistent appData directory
SRWieZ Mar 11, 2025
ecb8a03
wip: fix running artisan commands in bundle
SRWieZ Mar 11, 2025
029bd2e
feat: artisan commands in bundles
SRWieZ Mar 11, 2025
3e660a7
feat: artisan commands in bundles
SRWieZ Mar 11, 2025
b8f54b9
fix: native:serve will no longer run the bundle
SRWieZ Mar 11, 2025
cba4063
refactor: even more consistency + reducing the size of the bundled bi…
SRWieZ Mar 12, 2025
d28ed6b
feat: Better reset command
SRWieZ Mar 14, 2025
4156153
chore: upgrade outdated packages
SRWieZ Mar 14, 2025
a85d895
docs: added some comments
SRWieZ Mar 14, 2025
6f6fd36
feat: include symlinked composer packages
SRWieZ Mar 14, 2025
07dfc02
Merge branch 'main' into feat/bundle-builds
SRWieZ Mar 14, 2025
22122a5
refactor: per Simon's review
SRWieZ Mar 15, 2025
ed76171
Attempt to understand
simonhamp Mar 18, 2025
45231cd
Attempted fix
simonhamp Mar 18, 2025
368427c
Add route to quit the application (#181)
WINBIGFOX Mar 18, 2025
e581f16
Add routes for managing app open-at-login settings (#182)
WINBIGFOX Mar 18, 2025
c7911df
Merge pull request #179 from NativePHP/feat/bundle-builds
simonhamp Mar 19, 2025
b1e4613
Preserve permissions (#183)
XbNz Mar 19, 2025
8dfba90
Update composer.json
simonhamp Mar 19, 2025
cb7a3c8
Update README.md
simonhamp Mar 22, 2025
aa7f108
Add alert API routes and corresponding tests (#184)
WINBIGFOX Mar 25, 2025
f60f497
Skip chmod on Windows to avoid unnecessary permission changes (#186)
urufudev Mar 27, 2025
84443aa
add 'all' option to `publish` command (#185)
Mar 27, 2025
7dad315
Manual Plugin Build (#187)
PeteBishwhip Mar 28, 2025
36ebe46
fix: alert - handling of null values (#188)
WINBIGFOX Mar 31, 2025
149789c
Feature/add native theme getter setter (#190)
WINBIGFOX Mar 31, 2025
eb3f37a
Fix menubar tray can be nullable (#191)
WINBIGFOX Mar 31, 2025
01270ec
ci: update PHP versions in test matrix and simplify test execution (#…
SRWieZ Mar 31, 2025
f931084
Add copyright information to build configuration (#193)
WINBIGFOX Mar 31, 2025
8f28de9
PHP Support Sync (#192)
PeteBishwhip Mar 31, 2025
911797f
Pin php-bin to v1 (#195)
PeteBishwhip Mar 31, 2025
e9db0e9
ci: Update building plugin => Node.js v20 + create pull request (#194)
SRWieZ Mar 31, 2025
d3e291f
fix: ZePHPyr bundle on Windows (#196)
SRWieZ Apr 1, 2025
58edda1
Add Notarization env vars to buildtime (#198)
PeteBishwhip Apr 2, 2025
59e041b
fix: some apps just doesn't have css. Weird right? (#197)
SRWieZ Apr 3, 2025
ce5e4f7
fix: fileperms(): stat failed for public/storage (#199)
SRWieZ Apr 3, 2025
33ec37c
fix: ensure native serve resource path is cleared only if it exists (…
SRWieZ Apr 3, 2025
bc865bd
fix: caching config while in dev will make laravel think it's in elec…
SRWieZ Apr 3, 2025
769033d
Remove L10 from test matrix (#203)
PeteBishwhip Apr 4, 2025
e733d3e
Node Minimum Version Bump to Support Electron (#202)
PeteBishwhip Apr 4, 2025
3cf8dca
fix: custom PHP binary package not pruned on build (#204)
SRWieZ Apr 4, 2025
4408d39
fix: set LOG_LEVEL to "warning" in production (#206)
SRWieZ Apr 5, 2025
ba36ca0
fix: Please provide a valid cache path. (#205)
SRWieZ Apr 5, 2025
5b7257c
fix: handle power monitor events to manage scheduler lifecycle (#207)
SRWieZ Apr 7, 2025
6a10202
feat: replace jest with vitest (#154)
SRWieZ Apr 7, 2025
e0624eb
fix: App::version() not returning the correct version (#208)
SRWieZ Apr 7, 2025
b09bea9
Update package.json patch logic to include new fields (#214)
WINBIGFOX Apr 28, 2025
b394afe
Add endpoint to relaunch the app (#212)
WINBIGFOX Apr 28, 2025
3d5c719
Add support for `showOnAllWorkspaces` parameter in menuBar (#211)
WINBIGFOX Apr 29, 2025
1150575
Add support for additional app icon formats (#216)
WINBIGFOX May 3, 2025
ae8a902
Add auto-updater API to Electron server (#213)
WINBIGFOX May 8, 2025
eb72716
Fix: publish:all and upgrade deps (#209)
SRWieZ May 8, 2025
d9a7eea
Add extra sensitive files to cleanup (#217)
PeteBishwhip May 9, 2025
d7b7b29
Adjust window dimensions based on the `resizable` property. (#215)
WINBIGFOX May 21, 2025
0d25d3f
fix: autoupdater import (#221)
SRWieZ May 21, 2025
24f45c6
build(deps): bump dependabot/fetch-metadata from 2.3.0 to 2.4.0 (#219)
dependabot[bot] May 22, 2025
82a8a51
Auto updater api extended (#220)
WINBIGFOX May 23, 2025
dbe9fd8
fix: replace callPhpSync with callPhp for storage linking (#226)
SRWieZ Jun 14, 2025
dc346d8
Added file to warning message relative to the copy() call (#223)
rinodrummer Jun 22, 2025
5ddb8a8
fix: extend electron-updater mock to include downloadUpdate method (#…
WINBIGFOX Jun 25, 2025
f4cd36d
build(deps): bump stefanzweifel/git-auto-commit-action from 5 to 6 (#…
dependabot[bot] Jun 25, 2025
5b4b8b1
Add emoji panel API endpoints for support check and display (#224)
WINBIGFOX Jun 25, 2025
d9953c9
fix: symfony console deprecation notice (#227)
SRWieZ Jun 27, 2025
861d5ef
fix: take into account all changed keys (#231)
SantosVilanculos Jun 30, 2025
80b499f
Support custom settings (#229)
simonhamp Jul 9, 2025
ef114f3
remove storage:link (#232)
gwleuverink Jul 16, 2025
5a850c0
feat: add Azure code signing configuration (#235)
faustbrian Jul 26, 2025
effb9a5
Update funding.yml
simonhamp Jul 26, 2025
e07e23b
only notarize mac builds (#239)
gwleuverink Jul 30, 2025
f924edc
always use php-bin cacert.pem - even for custom binaries (#238)
gwleuverink Aug 4, 2025
0375d39
add `storage/hot` to exclude files (#242)
gwleuverink Aug 4, 2025
8f16862
remove workingDirectory from Windows deep-link handler (#241)
gwleuverink Aug 4, 2025
c093f8a
Add `skipTaskbar` and `hiddenInMissionControl` properties to window A…
WINBIGFOX Aug 4, 2025
ed873d7
cleanup stray scheduler processes (#245)
gwleuverink Aug 17, 2025
0c99364
only use publisher config when updater enabled (#243)
gwleuverink Aug 18, 2025
ed09419
Fix port conflicts when running multiple NativePHP apps on Windows (#…
gwleuverink Aug 18, 2025
a7f4ded
Add possibility to set a zoom factor to window API (#246)
JulianGlueck Aug 18, 2025
065de21
Add Electron API endpoints for app locale information (#247)
JulianGlueck Aug 18, 2025
e51e6dc
build(deps): bump stefanzweifel/git-auto-commit-action from 5 to 6 (#…
dependabot[bot] Aug 29, 2025
4670a7f
build(deps): bump actions/checkout from 4 to 5 (#248)
dependabot[bot] Aug 29, 2025
ce8a88e
Optionally prevent opening of sub-windows (#249)
JulianGlueck Sep 2, 2025
a4a02fc
Add possibility to prevent navigation away from current domain or pag…
JulianGlueck Sep 2, 2025
470bf86
downgrade electron-builder (#251)
gwleuverink Sep 4, 2025
1f1267e
Chore/update dependencies (#233)
gwleuverink Sep 4, 2025
3c5d777
pull in vendored menubar lib
gwleuverink Sep 5, 2025
5edc1ad
swap import with vendored lib
gwleuverink Sep 5, 2025
b45c3de
pull in menubar's positioner dependency
gwleuverink Sep 5, 2025
dd2380c
remove menubar dependency
gwleuverink Sep 5, 2025
2903664
Build plugin
gwleuverink Sep 5, 2025
905e071
replace with original ts files
gwleuverink Sep 5, 2025
b5d8f68
move libs inside plugin src to avoid path issues
gwleuverink Sep 5, 2025
597f590
update lock files
gwleuverink Sep 5, 2025
468b9b9
Merge branch 'chore/pull-in-blocking-menubar-lib-and-upgrade-electron…
gwleuverink Sep 5, 2025
70c4e41
Build plugin
gwleuverink Sep 5, 2025
d00bab0
update electron & chromedriver to `^38`
gwleuverink Sep 5, 2025
350bbbd
Merge branch 'chore/pull-in-blocking-menubar-lib-and-upgrade-electron…
gwleuverink Sep 5, 2025
cf9009f
Build plugin
gwleuverink Sep 5, 2025
bcfef44
build(deps): bump actions/setup-node from 4 to 5 (#254)
dependabot[bot] Sep 8, 2025
c4fca73
disabled nodeIntegration & enabled contextIsolation
gwleuverink Sep 9, 2025
89ad429
Build plugin
gwleuverink Sep 9, 2025
ff62b09
remove unused preload
gwleuverink Sep 9, 2025
9120198
Merge branch 'enhancement/disable-node-integration' of github.com:Nat…
gwleuverink Sep 9, 2025
a1061ff
Allow overwriting of default web preferences
gwleuverink Sep 10, 2025
56a8d70
Build plugin
gwleuverink Sep 10, 2025
eab0140
allow users to overwirte MenuBar webPreferences
gwleuverink Sep 10, 2025
72d6a29
Merge branch 'enhancement/disable-node-integration' of github.com:Nat…
gwleuverink Sep 10, 2025
dfa4084
Build plugin
gwleuverink Sep 10, 2025
e9f08bd
add configurable webpreferences
gwleuverink Sep 10, 2025
60dc3c6
add webPreferences phpdoc
gwleuverink Sep 10, 2025
a133a2f
build(deps): bump aglipanci/laravel-pint-action from 2.5 to 2.6 (#237)
dependabot[bot] Sep 10, 2025
430b5dc
revert variable cleanup - not needed
gwleuverink Sep 10, 2025
4595d1f
Build plugin
gwleuverink Sep 10, 2025
4649eea
Extra files (#230)
simonhamp Sep 11, 2025
3ac3738
Merge remote-tracking branch 'origin/enhancement/add-configurable-web…
gwleuverink Sep 21, 2025
5e61fff
move Laravel namespace to subdirectory
gwleuverink Sep 21, 2025
4e9d01d
Merge remote-tracking branch 'origin/chore/pull-in-blocking-menubar-l…
gwleuverink Sep 21, 2025
2f76c95
Merge remote-tracking branch 'origin/enhancement/disable-node-integra…
gwleuverink Sep 21, 2025
ac449f2
merge electron repo laravel repo - history intact
gwleuverink Sep 21, 2025
4e31e7a
move electron php src to Elecron namespace
gwleuverink Sep 21, 2025
3943d48
fix paths
gwleuverink Sep 21, 2025
1ab98c3
delete old php files (already migrated)
gwleuverink Sep 21, 2025
74ce05c
move electron resources
gwleuverink Sep 21, 2025
4dd131b
fix paths
gwleuverink Sep 21, 2025
99f2e42
migrate configs
gwleuverink Sep 21, 2025
3cb397f
migrate tests from electron repo
gwleuverink Sep 21, 2025
0b2f1de
fix default cleanup paths
gwleuverink Sep 21, 2025
1c95652
npm audit fix
gwleuverink Sep 21, 2025
201db72
rename to nativephp/desktop
gwleuverink Sep 21, 2025
f4d4b7f
tidy - remove migrated tests
gwleuverink Sep 22, 2025
efc71f7
migrate GH worklflows
gwleuverink Sep 22, 2025
ce337f5
delete what's left of the old electron repo
gwleuverink Sep 22, 2025
f5a9455
update readme
gwleuverink Sep 22, 2025
15ff291
Build plugin
gwleuverink Sep 22, 2025
208822f
wip - fix tests
gwleuverink Sep 22, 2025
d9a2e33
fix tests - more resilient vendor directory resolution
gwleuverink Sep 22, 2025
c89f996
move internal exclude list to interternal config
gwleuverink Sep 22, 2025
843bcac
enable skipped test
gwleuverink Sep 22, 2025
37060eb
rename `resources/js` to `resources/electron`
gwleuverink Sep 22, 2025
86f3082
fix paths
gwleuverink Sep 22, 2025
a4076fc
update debug command
gwleuverink Sep 22, 2025
e84ffe2
check in ignored files
gwleuverink Sep 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
110 changes: 55 additions & 55 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -1,72 +1,72 @@
name: Bug Report
description: |
Found a bug in NativePHP? You're in the right place!
Found a bug in NativePHP for Desktop? You're in the right place!
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
We're sorry to hear you have a problem.
- type: markdown
attributes:
value: |
We're sorry to hear you have a problem.

Before submitting your report, please make sure you've been through the section "[Debugging](https://nativephp.com/docs/getting-started/debugging)" in the docs.
Before submitting your report, please make sure you've been through the section "[Debugging](https://nativephp.com/docs/getting-started/debugging)" in the docs.

Please also ensure that you have the latest version of NativePHP packages installed, and are using [supported versions](https://nativephp.com/docs/desktop/1/getting-started/support-policy) of PHP and Laravel.
Please also ensure that you have the latest version of NativePHP packages installed, and are using [supported versions](https://nativephp.com/docs/desktop/1/getting-started/support-policy) of PHP and Laravel.

If nothing here has helped you, please provide as much useful context as you can here to help us solve help you.
If nothing here has helped you, please provide as much useful context as you can here to help us solve help you.

Note that reams and reams of logs isn't helpful - please share only relevant errors.
Note that reams and reams of logs isn't helpful - please share only relevant errors.

If possible, please prepare a reproduction repo and link to it in the Notes field.
- type: textarea
id: what-doing
attributes:
label: What were you trying to do?
description: Some context about what you were trying to achieve
placeholder: Trying to build my app for production
validations:
required: true
If possible, please prepare a reproduction repo and link to it in the Notes field.
- type: textarea
id: what-doing
attributes:
label: What were you trying to do?
description: Some context about what you were trying to achieve
placeholder: Trying to build my app for production
validations:
required: true

- type: textarea
id: what-happened
attributes:
label: What happened?
description: What did you expect to happen?
placeholder: I cannot currently do X thing because when I do, it breaks X thing.
validations:
required: true
- type: textarea
id: what-happened
attributes:
label: What happened?
description: What did you expect to happen?
placeholder: I cannot currently do X thing because when I do, it breaks X thing.
validations:
required: true

- type: textarea
id: how-to-reproduce
attributes:
label: How to reproduce the bug
description: How did this occur, please add any config values used and provide a set of reliable steps if possible.
placeholder: When I do X I see Y.
validations:
required: true
- type: textarea
id: how-to-reproduce
attributes:
label: How to reproduce the bug
description: How did this occur, please add any config values used and provide a set of reliable steps if possible.
placeholder: When I do X I see Y.
validations:
required: true

- type: textarea
id: debug
attributes:
label: Debug Output
description: Please provide output from the NativePHP Debug command. This will help us understand your environment and the issue you're facing. (`php artisan native:debug`)
validations:
required: true
- type: textarea
id: debug
attributes:
label: Debug Output
description: Please provide output from the NativePHP Debug command. This will help us understand your environment and the issue you're facing. (`php artisan native:debug`)
validations:
required: true

- type: dropdown
id: operating-systems
attributes:
label: Which operating systems have you seen this occur on?
description: You may select more than one.
multiple: true
options:
- type: dropdown
id: operating-systems
attributes:
label: Which operating systems have you seen this occur on?
description: You may select more than one.
multiple: true
options:
- macOS
- Windows
- Linux

- type: textarea
id: notes
attributes:
label: Notes
description: Use this field to provide any other notes that you feel might be relevant to the issue. Include links to any reproduction repos you've created here.
validations:
required: false
- type: textarea
id: notes
attributes:
label: Notes
description: Use this field to provide any other notes that you feel might be relevant to the issue. Include links to any reproduction repos you've created here.
validations:
required: false
62 changes: 62 additions & 0 deletions .github/workflows/build-plugin.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# If it's a pull request, don't build the plugin, just fail if it can't be built
# If it's a push to main, build the plugin

name: plugin-build

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

permissions:
contents: write

steps:
- uses: actions/checkout@v5
with:
ref: ${{ github.event.pull_request.head.ref }}
repository: ${{ github.event.pull_request.head.repo.full_name }}

- name: Use Node.js
uses: actions/setup-node@v5
with:
node-version: 22.x

- name: Install dependencies
working-directory: ./resources/electron/
run: npm install

- name: Build plugin
working-directory: ./resources/electron/
run: npm run plugin:build

- name: Commit changes
if: github.event_name == 'pull_request'
uses: stefanzweifel/git-auto-commit-action@v6
with:
commit_message: Build plugin

- name: Create Pull Request
if: github.event_name != 'pull_request'
uses: peter-evans/create-pull-request@v7
with:
commit-message: Build plugin
title: 'Auto: Build plugin assets'
body: |
This PR contains the latest built plugin assets.

**Build Details:**
- Triggered by: ${{ github.actor }}
- From commit: [${{ github.sha }}](${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }})
- Workflow run: [View Run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})

Automatically generated by the plugin-build workflow.
branch: build-plugin-update
base: main
delete-branch: true
26 changes: 26 additions & 0 deletions .github/workflows/run-plugin-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: plugin-tests

on:
push:
branches: [main]
pull_request:
branches: [main]

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5

- name: Use Node.js
uses: actions/setup-node@v5
with:
node-version: 22.x

- name: Install dependencies
working-directory: ./resources/electron/
run: npm install

- name: Run tests
working-directory: ./resources/electron/
run: npm run plugin:test
7 changes: 4 additions & 3 deletions .github/workflows/run-tests.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
name: run-tests

on:
workflow_dispatch:
push:
branches: [main]
pull_request:
Expand All @@ -12,7 +13,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
os: [ubuntu-latest, windows-latest, macos-latest]
php: [8.4, 8.3]
laravel: [12.*, 11.*]
stability: [prefer-lowest, prefer-stable]
Expand Down Expand Up @@ -43,8 +44,8 @@ jobs:
- name: List Installed Dependencies
run: composer show

# - name: Debug PhpUnit version
# run: composer why phpunit/phpunit -t
- name: Show pest version
run: vendor/bin/pest --version

- name: Execute tests
run: vendor/bin/pest
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Laravel wrapper for the NativePHP framework.
# NativePHP for Desktop

[![Latest Version on Packagist](https://img.shields.io/packagist/v/nativephp/laravel.svg?style=flat-square)](https://packagist.org/packages/nativephp/laravel)
[![GitHub Tests Action Status](https://img.shields.io/github/actions/workflow/status/nativephp/laravel/run-tests.yml?branch=main&label=tests&style=flat-square)](https://github.com/nativephp/laravel/actions?query=workflow%3Arun-tests+branch%3Amain)
Expand Down
20 changes: 14 additions & 6 deletions composer.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
{
"name": "nativephp/laravel",
"description": "Laravel wrapper for the NativePHP framework.",
"name": "nativephp/desktop",
"description": "NativePHP for Desktop",
"keywords": [
"nativephp",
"laravel",
"desktop",
"nativephp-laravel"
],
"homepage": "https://github.com/nativephp/laravel",
Expand Down Expand Up @@ -33,8 +34,12 @@
"require": {
"php": "^8.3",
"illuminate/contracts": "^10.0|^11.0|^12.0",
"laravel/prompts": "^0.1.1|^0.2|^0.3",
"nativephp/php-bin": "^1.0",
"spatie/laravel-package-tools": "^1.16.4",
"symfony/finder": "^6.2|^7.0"
"symfony/filesystem": "^6.4|^7.2",
"symfony/finder": "^6.2|^7.0",
"ext-zip": "*"
},
"require-dev": {
"guzzlehttp/guzzle": "^7.0",
Expand All @@ -52,7 +57,8 @@
},
"autoload": {
"psr-4": {
"Native\\Laravel\\": "src/"
"Native\\Laravel\\": "src/Laravel",
"Native\\Electron\\": "src/Electron"
}
},
"autoload-dev": {
Expand Down Expand Up @@ -82,7 +88,8 @@
"extra": {
"laravel": {
"providers": [
"Native\\Laravel\\NativeServiceProvider"
"Native\\Laravel\\NativeServiceProvider",
"Native\\Electron\\ElectronServiceProvider"
],
"aliases": {
"ChildProcess": "Native\\Laravel\\Facades\\ChildProcess",
Expand All @@ -100,7 +107,8 @@
"Settings": "Native\\Laravel\\Facades\\Settings",
"Shell": "Native\\Laravel\\Facades\\Shell",
"System": "Native\\Laravel\\Facades\\System",
"Window": "Native\\Laravel\\Facades\\Window"
"Window": "Native\\Laravel\\Facades\\Window",
"Updater": "Native\\Electron\\Facades\\Updater"
}
}
},
Expand Down
36 changes: 36 additions & 0 deletions config/nativephp-internal.php
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,42 @@
'code_signing_account_name' => env('NATIVEPHP_AZURE_CODE_SIGNING_ACCOUNT_NAME'),
],

/**
* A list of files and folders that should be removed.
*/
'cleanup_exclude_files' => [
// .git and dev directories
'.git',
'dist',
'build',
'temp',
'extras',
'docker',
'packages',
'**/.github',

// Potentially containing sensitive info
'auth.json', // Composer auth file
'database/*.sqlite',
'database/*.sqlite-shm',
'database/*.sqlite-wal',

'storage/framework/sessions/*',
'storage/framework/testing/*',
'storage/framework/cache/*',
'storage/framework/views/*',
'storage/logs/*',
'storage/hot',

// Only needed for local testing
'vendor/nativephp/desktop/resources',
'vendor/nativephp/desktop/vendor',
'vendor/nativephp/php-bin',

// Also deleted in PrunesVendorDirectory after fresh composer install
'vendor/bin',
],

/**
* The binary path of PHP for NativePHP to use at build.
*/
Expand Down
2 changes: 1 addition & 1 deletion phpstan.neon
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@ parameters:


excludePaths:
- ./src/NativeServiceProvider.php
- ./src/Laravel/NativeServiceProvider.php
5 changes: 5 additions & 0 deletions resources/electron/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.idea
node_modules
out
*.log
!build
12 changes: 12 additions & 0 deletions resources/electron/build/entitlements.mac.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
<true/>
</dict>
</plist>
Loading
Loading