Framework Structure


AutoFlex:

Project Structure1

  • .github/workflows/ Contains CI/CD workflows powered by GitHub Actions. For example, pages.yml automates deployment of this documentation website.
  • autoflex/ This is the main package where AutoFlex’s functionality lives—utilities, and core framework modules.
  • docs/ Markdown-based documentation files rendered by Just the Docs. This directory powers the GitHub Pages site.
  • logs/ (Optional) For storing logs generated during runtime or debugging. Helpful for tracking issues or reviewing system behavior.
  • LICENSE Specifies the open-source license for the project, clarifying usage and distribution rights.
  • README.md The main entry point when visiting the GitHub repository. Typically includes an overview, installation guide, and quick usage instructions.



autoflex:

Project Structure2

  • __pycache__/ Automatically generated directory that stores compiled .pyc files for faster module loading.

  • config/ Contains configuration-related code.

  • core/ The heart of the framework. Includes the main algorithm or workflow engine.

  • tests/ Tests that validate the correctness of the library.

  • __init__.py Marks this directory as a Python package.

  • pyproject.toml A modern Python configuration file standardized by PEP 518.

  • setup.py Traditional script used to define package metadata and entry points.



core:

Project Structure3

  • pyautogui_actions/ Contains automation logic (Not Comprehensive) built with PyAutoGUI, a library that simulates mouse and keyboard actions on the screen.

  • pynput_actions/ Contains automation modules (Not Comprehensive) that use pynput, a library for controlling and monitoring keyboard/mouse events at a lower level.

  • selenium_actions/ Includes actions implemented (Not Comprehensive) using Selenium, a browser automation framework.

  • actions.py Acts as a dispatcher to unify the various action modules (pyautogui, pynput, selenium). This is the file you may find most useful.

  • config_loader.py Responsible for loading and validating configuration files.

  • exceptions.py Defines custom error classes specific to your framework.

  • logger.py Sets up the logging system.

  • web_manager.py Handles browser session management using Selenium.


© 2025 AutoFlex. Built by Zhiyuan Li