Skip to content

Latest commit

 

History

History
30 lines (20 loc) · 2.22 KB

File metadata and controls

30 lines (20 loc) · 2.22 KB

Project Overview

This project is a desktop application with a graphical user interface (GUI) built using Python's tkinter library. The primary purpose of the application is to provide a user-friendly frontend for a collection of PowerShell scripts that automate tasks related to Hyper-V virtual machine management.

Key Features

  • GUI Frontend: The application offers an intuitive interface for interacting with complex PowerShell scripts, eliminating the need for users to run commands manually.
  • Hyper-V Automation: The backend consists of a suite of PowerShell scripts designed to automate various Hyper-V tasks, such as creating virtual machines, configuring network settings, and managing system properties.
  • Modular Design: The application is structured into modular components, including a main application window, a tabbed notebook interface, and distinct tabs for different functionalities (e.g., General, Create VM, Active Directory).

Main Technologies

  • Python: The core language for the GUI application.
  • Tkinter: The standard Python interface to the Tcl/Tk GUI toolkit, used for creating the desktop application.
  • PowerShell: The scripting language used for all the backend automation tasks related to Hyper-V.

Project Structure

The project is organized into the following main directories:

  • components/: Contains the Python modules for the different UI components of the application.
  • lib/: Includes library files, such as shared functions and utilities.
  • scripts/: Houses all the PowerShell scripts used for automation.
  • icons/: Stores icon files for the application.
  • documentation/: Contains markdown files with project documentation.

Important Notes

  • Administrator Privileges: On the first launch, the application will display a notification informing you that most scripts require administrative privileges to run correctly. Please ensure you run the application as an administrator for full functionality.
  • User-Specific Configuration: The application generates a config.json file to store user-specific settings. This file is intentionally not tracked by Git and should be included in your .gitignore if you are forking or cloning this repository.