pyloid 0.23.15__tar.gz → 0.23.16__tar.gz

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 (25) hide show
  1. pyloid-0.23.16/PKG-INFO +75 -0
  2. pyloid-0.23.16/README.md +55 -0
  3. {pyloid-0.23.15 → pyloid-0.23.16}/pyproject.toml +1 -1
  4. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/pyloid.py +19 -0
  5. pyloid-0.23.15/PKG-INFO +0 -97
  6. pyloid-0.23.15/README.md +0 -77
  7. {pyloid-0.23.15 → pyloid-0.23.16}/LICENSE +0 -0
  8. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/__init__.py +0 -0
  9. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/api.py +0 -0
  10. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/autostart.py +0 -0
  11. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/browser_window.py +0 -0
  12. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/custom/titlebar.py +0 -0
  13. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/filewatcher.py +0 -0
  14. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/js_api/base.py +0 -0
  15. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/js_api/event_api.py +0 -0
  16. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/js_api/window_api.py +0 -0
  17. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/monitor.py +0 -0
  18. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/rpc.py +0 -0
  19. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/serve.py +0 -0
  20. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/store.py +0 -0
  21. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/thread_pool.py +0 -0
  22. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/timer.py +0 -0
  23. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/tray.py +0 -0
  24. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/url_interceptor.py +0 -0
  25. {pyloid-0.23.15 → pyloid-0.23.16}/src/pyloid/utils.py +0 -0
@@ -0,0 +1,75 @@
1
+ Metadata-Version: 2.3
2
+ Name: pyloid
3
+ Version: 0.23.16
4
+ Summary:
5
+ Author: aesthetics-of-record
6
+ Author-email: 111675679+aesthetics-of-record@users.noreply.github.com
7
+ Requires-Python: >=3.9,<3.14
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: Programming Language :: Python :: 3.9
10
+ Classifier: Programming Language :: Python :: 3.10
11
+ Classifier: Programming Language :: Python :: 3.11
12
+ Classifier: Programming Language :: Python :: 3.12
13
+ Classifier: Programming Language :: Python :: 3.13
14
+ Requires-Dist: aiohttp-cors (>=0.8.1,<0.9.0)
15
+ Requires-Dist: pickledb (>=1.3.2,<2.0.0)
16
+ Requires-Dist: platformdirs (>=4.3.7,<5.0.0)
17
+ Requires-Dist: pyside6 (>=6.8.2.1,<7.0.0.0)
18
+ Description-Content-Type: text/markdown
19
+
20
+ <h1 style="text-align: center; font-size: 200px; font-weight: 500;">
21
+ <i>Pyloid</i>
22
+ </h1>
23
+
24
+ ![example image](example.png)
25
+
26
+ <h2 align="center" style="font-size: 28px;"><b>Pyloid: Thread-Safe Desktop Apps—Unified with Any Frontend and Python Technology</b></h2>
27
+
28
+
29
+ ## 💡 Key Features
30
+
31
+ - **All Frontend Frameworks** are supported
32
+ - **All features necessary** for a desktop application are implemented
33
+ - Through thread-safe implementation, it seamlessly **integrates with any Python framework**
34
+ - **RPC** between Python and JavaScript
35
+ - Single Instance Application / Multi Instance Application Support
36
+ - Multi-Window Application Support
37
+ - Clean and Intuitive Code Structure
38
+ - **Cross-Platform Support**
39
+ - Window Customization
40
+ - **Detailed Numpy-style Docstrings**
41
+
42
+
43
+
44
+ ## 🚀 Getting Started
45
+
46
+ ### [Prerequisites](https://docs.pyloid.com/getting-started/prerequisites)
47
+
48
+ - Node.js
49
+ - Python
50
+ - uv
51
+
52
+ ### [Create Project](https://docs.pyloid.com/getting-started/create-pyloid-app)
53
+
54
+ ```bash
55
+ npm create pyloid-app@latest
56
+ ```
57
+
58
+ ## Documentation 📚
59
+
60
+ [Pyloid Documentation](https://docs.pyloid.com/)
61
+
62
+ ## License
63
+
64
+ This project is licensed under the terms of the Apache License 2.0. See the [LICENSE](./LICENSE) file for details.
65
+
66
+ This project uses PySide6, which is licensed under the LGPL (Lesser General Public License).
67
+
68
+ ## Contributing 🤝
69
+
70
+
71
+
72
+ ## Issues
73
+
74
+ If you encounter any issues or have suggestions for improvements, please open an issue on the [GitHub repository](https://github.com/Pyloid/pyloid/issues).
75
+
@@ -0,0 +1,55 @@
1
+ <h1 style="text-align: center; font-size: 200px; font-weight: 500;">
2
+ <i>Pyloid</i>
3
+ </h1>
4
+
5
+ ![example image](example.png)
6
+
7
+ <h2 align="center" style="font-size: 28px;"><b>Pyloid: Thread-Safe Desktop Apps—Unified with Any Frontend and Python Technology</b></h2>
8
+
9
+
10
+ ## 💡 Key Features
11
+
12
+ - **All Frontend Frameworks** are supported
13
+ - **All features necessary** for a desktop application are implemented
14
+ - Through thread-safe implementation, it seamlessly **integrates with any Python framework**
15
+ - **RPC** between Python and JavaScript
16
+ - Single Instance Application / Multi Instance Application Support
17
+ - Multi-Window Application Support
18
+ - Clean and Intuitive Code Structure
19
+ - **Cross-Platform Support**
20
+ - Window Customization
21
+ - **Detailed Numpy-style Docstrings**
22
+
23
+
24
+
25
+ ## 🚀 Getting Started
26
+
27
+ ### [Prerequisites](https://docs.pyloid.com/getting-started/prerequisites)
28
+
29
+ - Node.js
30
+ - Python
31
+ - uv
32
+
33
+ ### [Create Project](https://docs.pyloid.com/getting-started/create-pyloid-app)
34
+
35
+ ```bash
36
+ npm create pyloid-app@latest
37
+ ```
38
+
39
+ ## Documentation 📚
40
+
41
+ [Pyloid Documentation](https://docs.pyloid.com/)
42
+
43
+ ## License
44
+
45
+ This project is licensed under the terms of the Apache License 2.0. See the [LICENSE](./LICENSE) file for details.
46
+
47
+ This project uses PySide6, which is licensed under the LGPL (Lesser General Public License).
48
+
49
+ ## Contributing 🤝
50
+
51
+
52
+
53
+ ## Issues
54
+
55
+ If you encounter any issues or have suggestions for improvements, please open an issue on the [GitHub repository](https://github.com/Pyloid/pyloid/issues).
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pyloid"
3
- version = "0.23.15"
3
+ version = "0.23.16"
4
4
  description = ""
5
5
  authors = ["aesthetics-of-record <111675679+aesthetics-of-record@users.noreply.github.com>"]
6
6
  readme = "README.md"
@@ -36,13 +36,32 @@ from .store import Store
36
36
  from .rpc import PyloidRPC
37
37
  import threading
38
38
  import asyncio
39
+ import signal
39
40
 
40
41
  # software backend
41
42
  os.environ["QT_QUICK_BACKEND"] = "software"
42
43
 
44
+ #########################################################################
43
45
  # for linux debug
44
46
  os.environ["QTWEBENGINE_DICTIONARIES_PATH"] = "/"
45
47
 
48
+ original_set_wakeup_fd = signal.set_wakeup_fd
49
+ original_signal = signal.signal
50
+
51
+ def safe_set_wakeup_fd(fd, *args, **kwargs):
52
+ if threading.current_thread() is threading.main_thread():
53
+ return original_set_wakeup_fd(fd, *args, **kwargs)
54
+ return -1 # 메인 스레드가 아닌 경우 아무것도 하지 않고 -1 반환
55
+
56
+ def safe_signal(signalnum, handler):
57
+ if threading.current_thread() is threading.main_thread():
58
+ return original_signal(signalnum, handler)
59
+ return None # 메인 스레드가 아닌 경우 아무것도 하지 않음
60
+
61
+ signal.set_wakeup_fd = safe_set_wakeup_fd
62
+ signal.signal = safe_signal
63
+ #########################################################################
64
+
46
65
  # for macos debug
47
66
  logging.getLogger("Qt").setLevel(logging.ERROR)
48
67
 
pyloid-0.23.15/PKG-INFO DELETED
@@ -1,97 +0,0 @@
1
- Metadata-Version: 2.3
2
- Name: pyloid
3
- Version: 0.23.15
4
- Summary:
5
- Author: aesthetics-of-record
6
- Author-email: 111675679+aesthetics-of-record@users.noreply.github.com
7
- Requires-Python: >=3.9,<3.14
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: Programming Language :: Python :: 3.9
10
- Classifier: Programming Language :: Python :: 3.10
11
- Classifier: Programming Language :: Python :: 3.11
12
- Classifier: Programming Language :: Python :: 3.12
13
- Classifier: Programming Language :: Python :: 3.13
14
- Requires-Dist: aiohttp-cors (>=0.8.1,<0.9.0)
15
- Requires-Dist: pickledb (>=1.3.2,<2.0.0)
16
- Requires-Dist: platformdirs (>=4.3.7,<5.0.0)
17
- Requires-Dist: pyside6 (>=6.8.2.1,<7.0.0.0)
18
- Description-Content-Type: text/markdown
19
-
20
- # Pyloid 👋
21
-
22
- Pyloid is the Python backend version of Electron and Tauri, designed to simplify desktop application development. This open-source project, built on **QtWebEngine** and **PySide6**, provides seamless integration with various Python features, making it easy to build powerful applications effortlessly.
23
-
24
- ![example image](example.png)
25
-
26
- ## Why Pyloid?
27
-
28
- With Pyloid, you can leverage the full power of Python in your desktop applications. Its simplicity and flexibility make it the perfect choice for both beginners and experienced developers looking for a Python-focused alternative to Electron or Tauri. It is especially optimized for building AI-powered desktop applications.
29
-
30
- ### Key Features 🚀
31
-
32
- - **Web-based GUI Generation**
33
- - **System Tray Icon Support**
34
- - **Multi-Window Management**
35
- - **Bridge API between Python and JavaScript**
36
- - **Single Instance Application / Multi Instance Application Support**
37
- - **Comprehensive Desktop App Features**
38
- - **Clean and Intuitive Code Structure**
39
- - **Live UI Development Experience**
40
- - **Cross-Platform Support**
41
- - **Integration with Various Frontend Libraries**
42
- - **Window Customization**
43
- - **Direct Utilization of PySide6 Features**
44
- - **Detailed Numpy-style Docstrings**
45
-
46
- ## Documentation 📚
47
-
48
- [Pyloid Documentation](https://docs.pyloid.com/)
49
-
50
- ### Create Project 📦
51
-
52
- #### Creating a HTML/CSS/JS + Pyloid Project 🌐
53
-
54
- [https://github.com/pylonic/pyloid_html_boilerplate](https://github.com/Pyloid/pyloid_html_boilerplate)
55
-
56
- #### Creating a React + Vite + Pyloid Project ⚛️
57
-
58
- [https://github.com/pylonic/pyloid_react_boilerplate](https://github.com/Pyloid/pyloid_react_boilerplate)
59
-
60
- ### Custom Your Boilerplate 🔨
61
-
62
- ```bash
63
- pip install pyloid
64
- ```
65
-
66
- Package URL: [https://pypi.org/project/pyloid/](https://pypi.org/project/pyloid/)
67
-
68
- ## Usage 🛠️
69
-
70
- ### Creating a Basic Application
71
-
72
- ```python
73
- from pyloid import Pyloid
74
-
75
- app = Pyloid(app_name="Pyloid-App", single_instance=True)
76
-
77
- win = app.create_window("pyloid-example")
78
- win.load_url("https://www.example.com")
79
- win.show_and_focus()
80
-
81
- app.run()
82
- ```
83
-
84
- ## License 📄
85
-
86
- This project is licensed under the terms of the Apache License 2.0. See the [LICENSE](./LICENSE) file for details.
87
-
88
- This project uses PySide6, which is licensed under the LGPL (Lesser General Public License).
89
-
90
- ## Contributing 🤝
91
-
92
- Not Yet
93
-
94
- ## Issues
95
-
96
- If you encounter any issues or have suggestions for improvements, please open an issue on the [GitHub repository](https://github.com/Pyloid/pyloid/issues).
97
-
pyloid-0.23.15/README.md DELETED
@@ -1,77 +0,0 @@
1
- # Pyloid 👋
2
-
3
- Pyloid is the Python backend version of Electron and Tauri, designed to simplify desktop application development. This open-source project, built on **QtWebEngine** and **PySide6**, provides seamless integration with various Python features, making it easy to build powerful applications effortlessly.
4
-
5
- ![example image](example.png)
6
-
7
- ## Why Pyloid?
8
-
9
- With Pyloid, you can leverage the full power of Python in your desktop applications. Its simplicity and flexibility make it the perfect choice for both beginners and experienced developers looking for a Python-focused alternative to Electron or Tauri. It is especially optimized for building AI-powered desktop applications.
10
-
11
- ### Key Features 🚀
12
-
13
- - **Web-based GUI Generation**
14
- - **System Tray Icon Support**
15
- - **Multi-Window Management**
16
- - **Bridge API between Python and JavaScript**
17
- - **Single Instance Application / Multi Instance Application Support**
18
- - **Comprehensive Desktop App Features**
19
- - **Clean and Intuitive Code Structure**
20
- - **Live UI Development Experience**
21
- - **Cross-Platform Support**
22
- - **Integration with Various Frontend Libraries**
23
- - **Window Customization**
24
- - **Direct Utilization of PySide6 Features**
25
- - **Detailed Numpy-style Docstrings**
26
-
27
- ## Documentation 📚
28
-
29
- [Pyloid Documentation](https://docs.pyloid.com/)
30
-
31
- ### Create Project 📦
32
-
33
- #### Creating a HTML/CSS/JS + Pyloid Project 🌐
34
-
35
- [https://github.com/pylonic/pyloid_html_boilerplate](https://github.com/Pyloid/pyloid_html_boilerplate)
36
-
37
- #### Creating a React + Vite + Pyloid Project ⚛️
38
-
39
- [https://github.com/pylonic/pyloid_react_boilerplate](https://github.com/Pyloid/pyloid_react_boilerplate)
40
-
41
- ### Custom Your Boilerplate 🔨
42
-
43
- ```bash
44
- pip install pyloid
45
- ```
46
-
47
- Package URL: [https://pypi.org/project/pyloid/](https://pypi.org/project/pyloid/)
48
-
49
- ## Usage 🛠️
50
-
51
- ### Creating a Basic Application
52
-
53
- ```python
54
- from pyloid import Pyloid
55
-
56
- app = Pyloid(app_name="Pyloid-App", single_instance=True)
57
-
58
- win = app.create_window("pyloid-example")
59
- win.load_url("https://www.example.com")
60
- win.show_and_focus()
61
-
62
- app.run()
63
- ```
64
-
65
- ## License 📄
66
-
67
- This project is licensed under the terms of the Apache License 2.0. See the [LICENSE](./LICENSE) file for details.
68
-
69
- This project uses PySide6, which is licensed under the LGPL (Lesser General Public License).
70
-
71
- ## Contributing 🤝
72
-
73
- Not Yet
74
-
75
- ## Issues
76
-
77
- If you encounter any issues or have suggestions for improvements, please open an issue on the [GitHub repository](https://github.com/Pyloid/pyloid/issues).
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes