{"library":"pyobjc-framework-symbols","title":"PyObjC Framework Symbols","description":"The `pyobjc-framework-symbols` package provides Python bindings for Apple's `Symbols` framework on macOS, enabling interaction with SF Symbols. It is part of the larger PyObjC project, currently at version 12.1, with a release cadence tied to macOS SDK updates and Python version support cycles.","language":"python","status":"active","last_verified":"Sat May 16","install":{"commands":["pip install pyobjc-framework-symbols"],"cli":null},"imports":["from Symbols import SFSymbolsLibrary","from Symbols import SFSymbolConfiguration"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import objc\nfrom Symbols import SFSymbolsLibrary, SFSymbolConfiguration\n\n# Ensure PyObjC runtime is initialized (often implicit with framework imports)\n# if not objc.isInitialized():\n#    objc.initFrameworkWrapper(\"Foundation\")\n\ntry:\n    # Get the shared library of SF Symbols\n    shared_library = SFSymbolsLibrary.sharedLibrary()\n\n    if shared_library:\n        print(\"Successfully accessed SFSymbolsLibrary.\")\n        \n        # List a few symbol names\n        all_symbol_names = shared_library.allSymbolNames()\n        if all_symbol_names:\n            print(f\"Found {len(all_symbol_names)} SF Symbols.\")\n            print(f\"First 5 symbols: {list(all_symbol_names)[:5]}\")\n\n            # Example: Create a symbol configuration (requires macOS 11.0+ typically)\n            config = SFSymbolConfiguration.configurationWithPointSize_weight_scale_(\n                24,  # Point size\n                3,   # SFSymbolWeightSemibold (use integer for simplicity in quickstart)\n                2    # SFSymbolScaleMedium (use integer for simplicity in quickstart)\n            )\n            print(f\"Created SFSymbolConfiguration: {config}\")\n        else:\n            print(\"No symbol names found in library.\")\n    else:\n        print(\"SFSymbolsLibrary.sharedLibrary() returned None.\")\nexcept Exception as e:\n    print(f\"An error occurred: {e}\")\n    print(\"Please ensure you are running on macOS 11.0+ and PyObjC is correctly installed.\")\n","lang":"python","description":"This quickstart demonstrates how to access the `SFSymbolsLibrary` and create an `SFSymbolConfiguration` object using the `pyobjc-framework-symbols` bindings. This functionality is generally available on macOS 11.0 and newer.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-16","installed_version":null,"pypi_latest":"12.1","is_stale":null,"summary":{"python_range":"3.10–3.9","success_rate":0,"avg_install_s":null,"avg_import_s":null,"wheel_type":null},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3.3,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3.2,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":2.7,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pyobjc-framework-symbols","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3.9,"import_time_s":null,"mem_mb":null,"disk_size":null}]}}