Skip to content

Commit 6cd7e10

Browse files
authored
Update README.md
1 parent 51b092e commit 6cd7e10

File tree

1 file changed

+265
-2
lines changed

1 file changed

+265
-2
lines changed

README.md

Lines changed: 265 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
---
1515

16-
**Version `2.0.0`**
16+
**Version `3.0.0`**
1717

1818
- **settings json**
1919
- **light theme**
@@ -31,6 +31,259 @@
3131

3232
---
3333

34+
### **1- Plugin System**
35+
- **Extensible plugin system**
36+
- **Dynamic plugin loading from the `plugins` folder**
37+
- **Implement various hooks**
38+
```Python
39+
class PluginManager:
40+
def load_plugins(self): ...
41+
def execute_hook(self, hook_name, *args, **kwargs): ...
42+
```
43+
44+
45+
### **2-Virtual Environment Management**
46+
- **Automatic discovery of virtual environments**
47+
- **Support for `venv`, `virtualenv`, and `conda`**
48+
- **Integration with various Python interpreters**
49+
```Python
50+
def find_virtual_environments() -> List[str]:
51+
```
52+
53+
### **3- Advanced Optimization Options**
54+
- **PyInstaller performance enhancements (`--optimize`).**
55+
- **Debug information stripping (`--strip`).**
56+
- **Redirect preference control (stdout/stderr/file).**
57+
58+
```Python
59+
self.optimizeChk = QCheckBox("Enable performance optimizations --optimize")
60+
self.stripChk = QCheckBox("Remove unnecessary information --strip")
61+
self.redirectCombo = QComboBox()
62+
self.redirectCombo.addItems(["No Redirect", "Redirect stdout", "Redirect stderr", "Redirect to File"])
63+
```
64+
65+
### **4- Digital Signature System**
66+
- **Executable file signing capability.**
67+
- **PFX/P12 certificate support.**
68+
- **Timestamp server integration for validation.**
69+
70+
```Python
71+
self.certFileEdit = QLineEdit() # Signature certificate (.pfx/.p12)
72+
self.certPassEdit = QLineEdit() # Certificate password
73+
self.timestampCombo = QComboBox() # Timestamp servers
74+
self.timestampCombo.addItems(["None", "http://timestamp.digicert.com", "http://timestamp.verisign.com"])
75+
```
76+
77+
### **5- Ready-made Templates**
78+
- **Pre-configured application templates.**
79+
- **Different configurations for various app types.**
80+
- **Easy customization of template settings.**
81+
82+
```Python
83+
self.templateCombo = QComboBox()
84+
self.templateCombo.addItems([
85+
"GUI Application",
86+
"Console Application",
87+
"Service Application",
88+
"Web Application",
89+
"Custom"
90+
])
91+
```
92+
93+
### **6- Advanced Dependency Analyzer**
94+
- **In-depth dependency analysis.**
95+
- **Large file detection and warnings.**
96+
- **Suspicious import detection and smart recommendations.**
97+
98+
```Python
99+
def advanced_dependency_analysis(self, script_path: str) -> Dict[str, Any]:
100+
# analyze imports, hiddenimports, and large package footprints
101+
...
102+
```
103+
104+
### **7- Version Information System**
105+
- **Application metadata management.**
106+
- **Version info integration into build.**
107+
- **Company and developer details fields.**
108+
109+
```Python
110+
version_group = QGroupBox("Version Information")
111+
self.versionEdit = QLineEdit() # Version number
112+
self.companyEdit = QLineEdit() # Company name
113+
self.copyrightEdit = QLineEdit() # Copyright info
114+
```
115+
116+
### **8- Advanced Security Options**
117+
- **Reverse engineering protection options.**
118+
- **Anti-debugging features.**
119+
- **Code obfuscation and packer support.**
120+
121+
```Python
122+
self.obfuscateChk = QCheckBox("Code Obfuscation")
123+
self.antiDebugChk = QCheckBox("Anti-Debug Protection")
124+
self.packerChk = QCheckBox("Use Packer Files")
125+
```
126+
127+
### **9- Multi-Platform Support**
128+
- **Build for multiple operating systems.**
129+
- **Platform-specific configuration presets.**
130+
- **Cross-platform compatibility checks.**
131+
132+
```Python
133+
self.platformCombo = QComboBox()
134+
self.platformCombo.addItems([
135+
"Windows (win32)",
136+
"Windows 64-bit (win64)",
137+
"Linux",
138+
"macOS"
139+
])
140+
```
141+
142+
### **10- Integrated Reporting System**
143+
- **Detailed build reports and logs.**
144+
- **Performance statistics and analysis.**
145+
- **Output artifact inspection.**
146+
147+
```Python
148+
def generate_build_report(self, duration: float, output_path: str):
149+
# compile build metadata, size, warnings, and timing
150+
...
151+
```
152+
153+
### **11- Advanced User Interface**
154+
- **Organized tabbed interface for sections.**
155+
- **Splitter layout management for resizable panes.**
156+
- **Enhanced user experience and accessibility.**
157+
158+
```Python
159+
tab_widget = QTabWidget()
160+
tab_widget.addTab(basic_tab, "Basic")
161+
tab_widget.addTab(advanced_tab, "Advanced")
162+
tab_widget.addTab(security_tab, "Security")
163+
```
164+
165+
### **12- Backup System**
166+
- **Automatic backup creation for settings.**
167+
- **Settings preservation and easy restoration.**
168+
- **Versioned backups with timestamps.**
169+
170+
```Python
171+
def create_backup(self):
172+
timestamp = time.strftime("%Y%m%d_%H%M%S")
173+
backup_file = f"settings_backup_{timestamp}.json"
174+
# save current settings to backup_file
175+
...
176+
```
177+
178+
### **13- Output Testing System**
179+
- **Built-in output testing and validation.**
180+
- **Direct execution from interface with sandboxing.**
181+
- **Automatic error detection and reporting.**
182+
183+
```Python
184+
def test_output(self):
185+
# run basic tests on the generated executable
186+
...
187+
188+
def run_executable(self, exe_path):
189+
# execute with selected parameters and capture output
190+
...
191+
```
192+
193+
### **14- Advanced Resource Management**
194+
- **Resource compression options for smaller builds.**
195+
- **File encryption capabilities for bundled resources.**
196+
- **Memory efficiency management and tuning.**
197+
198+
```Python
199+
self.compressionCombo = QComboBox()
200+
self.compressionCombo.addItems(["No Compression", "Normal Compression", "High Compression"])
201+
self.encryptionChk = QCheckBox("Encrypt Resources")
202+
```
203+
204+
### **15- IDE Integration**
205+
- **VS Code and PyCharm integration support.**
206+
- **Custom IDE launch and configuration.**
207+
- **One-click open project in preferred IDE.**
208+
209+
```Python
210+
# settings example
211+
"ide_integration": {
212+
"vscode": False,
213+
"pycharm": False
214+
}
215+
```
216+
217+
### **16- Code Audit System**
218+
- **Automated security scanning and quality checks.**
219+
- **Static analysis and vulnerability detection.**
220+
- **Actionable suggestions and fix hints.**
221+
222+
```Python
223+
def code_audit(self):
224+
# run linters, security checks, and produce a report
225+
...
226+
```
227+
228+
### **17- Multi-Build System Support**
229+
- **Support multiple packers/build systems.**
230+
- **Fallbacks and compatibility layers.**
231+
- **User-selectable build backend.**
232+
233+
```Python
234+
self.buildSystemCombo = QComboBox()
235+
self.buildSystemCombo.addItems([
236+
"PyInstaller",
237+
"cx_Freeze",
238+
"Nuitka",
239+
"PyOxidizer"
240+
])
241+
```
242+
243+
### **18- Help and Documentation System**
244+
- **Comprehensive, searchable documentation.**
245+
- **Program information and user guide access.**
246+
- **Contextual help and tooltips.**
247+
248+
```Python
249+
def show_documentation(self):
250+
# open local/docs or remote docs page
251+
...
252+
253+
def about_program(self):
254+
# display about dialog with version and authors
255+
...
256+
```
257+
258+
### **19- Advanced Logging System**
259+
- **Detailed logging with levels and filters.**
260+
- **Command preview before execution.**
261+
- **Build reports and exportable logs.**
262+
263+
```Python
264+
logs_tab = QTabWidget()
265+
logs_tab.addTab(cmd_tab, "Command Preview")
266+
logs_tab.addTab(log_tab, "Build Log")
267+
logs_tab.addTab(report_tab, "Reports")
268+
```
269+
270+
### **20- Visual Enhancements**
271+
- **Dark/Light theme support and custom color schemes.**
272+
- **Attractive and accessible user interface.**
273+
- **Runtime theme switching and persistence.**
274+
275+
```Python
276+
def apply_dark_theme(self):
277+
# apply stylesheet for dark mode
278+
...
279+
280+
def apply_light_theme(self):
281+
# apply stylesheet for light mode
282+
...
283+
```
284+
285+
---
286+
34287
- **Converting files from `(.Py)` format to `(.exe)` format.**
35288
- **Convert multiple files at once `(.py)`.**
36289
- **Add entire `folders` containing texts/resources.**
@@ -100,7 +353,17 @@ Ppython PyToExe.py
100353
---
101354

102355
### **My WebSite**
103-
- **[wsl-iq.github.io/](https://wsl-iq.github.io/)**
356+
- **[wsl-iq.github.io](https://wsl-iq.github.io/)**
357+
- **[From Python To Executable](https://wsl-iq.github.io/Python-Executable/)**
358+
359+
---
360+
361+
### **Download**
362+
**[Python Executable 32/64 Bit]()**
363+
364+
**[Python Executable MSI]()**
365+
366+
**[PythonExecutable Later V1 , V2]()**
104367

105368
---
106369

0 commit comments

Comments
 (0)