python-eel / Eel

A little Python library for making simple Electron-like HTML/JS GUI apps
MIT License
6.5k stars 592 forks source link

Increase initialisation speed by optionally excluding files to scan #697

Open savelkouls opened 1 year ago

savelkouls commented 1 year ago

This PR solves an issue with slow loading eel applications by offering the developer the option to exclude file paths from the EXPOSED_JS_FUNCTIONS scan.

Instead of just scanning all .html, .js and .txt files, the developer can exclude file paths containing any of the strings passed trough the exclude_path parameter.

In a typical html template, there are lots of javascript files that add GUI functionalities, and in one case this added up to 120 seconds when using the current init command. eel.init('web') took 122.60855889320374 seconds

assuming all external javascript files are in the web/plugins directory, changing to the new option: eel.init('web', exclude_path=['web/plugins']) took 1.013951301574707 seconds