A modern industrial control system console built with PySide6 and Python. This application provides a comprehensive monitoring and management interface for industrial automation systems.
- Modern UI: Built with PySide6 for native look and feel
- Multi-page Navigation: Clean sidebar navigation with multiple functional pages
- Collapsible Sidebar: Space-saving design with expandable/collapsible navigation
- Responsive Design: Adapts to different screen sizes
- Dark Theme Support: Professional dark theme for industrial environments
- Modular Architecture: Clean separation of UI components and business logic
- Python 3.11 or higher
- pip package manager
-
Clone the repository:
git clone <repository-url> cd Industrial_System_GUI
-
Install dependencies using uv (recommended) or pip:
# Using uv uv sync # Or using pip pip install -r requirements.txt
-
Run the application:
python main.py
Industrial_System_GUI/ # Project root directory
├── core/ # Core business logic
│ ├── __init__.py
│ └── main_window.py # Main window class
├── ui/ # User interface related
│ ├── __init__.py
│ ├── widgets/ # Custom widgets (like sidebar)
│ └── pages/ # Individual pages
│ ├── __init__.py
│ ├── overview_page.py # System overview page
│ ├── monitor_page.py # Real-time monitoring page
│ ├── history_page.py # Historical data page
│ ├── alarm_page.py # Alarm information page
│ └── settings_page.py # Device configuration page
├── resources/ # Resource files
│ ├── icons/ # Icon resources
│ │ ├── overview.png
│ │ ├── monitor.png
│ │ └── ...
│ └── styles.qss # QSS stylesheet
├── utils/ # Utility classes
│ ├── __init__.py
│ └── animation_utils.py # Animation utilities (e.g., sidebar collapse animations)
├── main.py # Program entry point
├── pyproject.toml # Project dependencies and metadata
└── README.md # Project documentation
The application features a responsive UI with a collapsible sidebar navigation and multi-page interface:
- Launch the application using
python main.py - Use the sidebar to navigate between different functional areas
- Toggle the sidebar visibility using the collapse/expand button at the bottom
- Each page displays relevant information for that specific function
- PySide6: Cross-platform GUI framework based on Qt
- QDarkStyle: Dark theme for Qt applications
- Qt-Material: Material design styling for Qt applications
- QAsync: Asynchronous support for Qt applications
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.