# MacroPad Server A versatile MacroPad server application that lets you create, manage, and execute custom macros from both a local interface and remotely via a web interface. ## Features - **Text Macros**: Insert frequently used text snippets with a single click - **Application Macros**: Launch applications or scripts directly - **Key Modifiers**: Add Ctrl, Alt, Shift modifiers and Enter keypress to your text macros - **Custom Images**: Assign images to macros for easy identification - **Category Management**: Organize macros into custom tabs for better organization - **Web Interface**: Access and trigger your macros from other devices on your network - **System Tray Integration**: Minimize to tray when minimized, exit when closed - **QR Code Generation**: Quickly connect mobile devices to the web interface - **Sorting Options**: Sort macros by name, type, or recent usage - **Persistent Storage**: Macros are automatically saved for future sessions - **Dark Theme**: Modern dark interface for comfortable use - **Modular Architecture**: Clean separation of concerns with dedicated modules ## Requirements - Python 3.11+ - Required Python packages (install via requirements.txt): - tkinter - flask - pyautogui - pystray - Pillow (PIL) - waitress - netifaces - qrcode ## Installation 1. Clone or download this repository 2. Install the required dependencies: ```bash pip install -r requirements.txt ``` ## Alternative Installation Method #### Windows only 1. Create a Folder you wish to run MacroPad from 2. Download ```macropad.exe``` from the ```dist``` folder 3. Accept the security notices, and run the application > [!IMPORTANT] > The executable is unsigned and may trigger security warnings. You may need to click "More info" and "Run anyway" in Windows SmartScreen or add an exception in your antivirus software. ## Usage ### Main Interface When launched, MacroPad displays your existing macros with options to: - **Add New Macro**: Create text snippets or application shortcuts - **Edit Macro**: Modify existing macros - **Delete Macro**: Remove unwanted macros - **Sort Options**: Sort the Macros by type, name, and recent usage - **Manage Tabs**: Assign categories to macros for better organization - **Start Web Server**: Starts the web server to serve the MacroPad web interface. ### Creating a Macro 1. Click the "Add Macro" button 2. Fill in the details: - **Name**: A descriptive name for your macro - **Category**: Assign a category to associate with a tab - **Type**: Choose between Text or Application - **Command/Text**: The text to insert or application command to run - **Modifiers**: Select any combination of Ctrl, Alt, Shift, and Enter - **Image**: Optionally add an image for visual identification 3. Click "Save" to create your macro ### Remote Access The application runs a web server enabling remote access: 1. Note your computer's local IP address (shown in the application header) 2. From another device on the same network, open a web browser 3. Navigate to `http://:40000` 4. Click on any macro to execute it on your main computer ### System Tray When minimized to the system tray: - Right-click the tray icon to show options - Select "Show" to restore the window - Select "Exit" to close the application ## Example Application Commands ### Windows Examples #### Steam Applications ```"C:\Program Files (x86)\Steam\steam.exe" steam://rungameid/2767030``` #### Chrome to a website ```"C:\Program Files\Google\Chrome\Application\chrome.exe" http://twitch.tv/shadowdao``` #### Special Thanks to CatArgent_ on Twitch for proof reading my stuff and providing valuable feedback.