import argparse
import shutil
from pathlib import Path

def main():
    parser = argparse.ArgumentParser(description="Créer une application Django personnalisée.")
    parser.add_argument("app_name", help="Nom de l'application à générer")
    parser.add_argument("-d", "--directory", default=".", help="Répertoire cible (par défaut: courant)")
    args = parser.parse_args()

    app_name = args.app_name
    target_dir = Path(args.directory) / app_name

    if target_dir.exists():
        print(f"❌ Le dossier '{target_dir}' existe déjà.")
        return

    template_dir = Path(__file__).parent / "templates" / "app_template"
    shutil.copytree(template_dir, target_dir)

    for file_path in target_dir.rglob("*.py-tpl"):
        final_file = file_path.with_suffix("")
        content = file_path.read_text().replace("{{ app_name }}", app_name)
        final_file.write_text(content)
        file_path.unlink()

    print(f"✅ Application Django '{app_name}' créée dans {target_dir.resolve()}")

if __name__ == "__main__":
    main()
