import subprocess
import sys

# List of required modules
modules = [
    "flask",
    "cryptography",
    "pymysql",
    "flask-cors",
    "flask-sqlalchemy"
]

def install_modules(modules):
    for module in modules:
        try:
            # Try to import the module
            __import__(module.replace("-", "_"))  # Flask-CORS needs special handling
            print(f"{module} is already installed.")
        except ImportError:
            print(f"Installing {module}...")
            subprocess.check_call([sys.executable, "-m", "pip", "install", module])
            print(f"{module} installed successfully!")

if __name__ == "__main__":
    install_modules(modules)
