""" main.py — LabUI entry point. Run: python main.py Requirements: pip install PyQt6 pyqtgraph numpy pyserial """ import sys, os sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) # Plugin dependencies installed at runtime land here so the frozen app can import them. _PLUGIN_PACKAGES = os.path.join(os.path.expanduser("~"), ".labui", "plugin_packages") if os.path.isdir(_PLUGIN_PACKAGES) and _PLUGIN_PACKAGES not in sys.path: sys.path.insert(0, _PLUGIN_PACKAGES) from PyQt6.QtWidgets import QApplication from ui.main_window import MainWindow from core.debug_log import install as install_debug_log def main(): app = QApplication(sys.argv) app.setApplicationName("LabUI") install_debug_log() # tee stdout/stderr for the Debug window, before anything prints qss = os.path.join(os.path.dirname(os.path.abspath(__file__)), "ui", "style_dark.qss") if os.path.exists(qss): with open(qss) as f: app.setStyleSheet(f.read()) win = MainWindow() win.show() sys.exit(app.exec()) if __name__ == "__main__": main()