{"library":"ripgrepy","title":"ripgrepy Library","description":"ripgrepy is a Python interface to ripgrep, a powerful, line-oriented search tool that recursively searches directories for regex patterns. It functions as a wrapper around the native `ripgrep` binary, allowing users to chain `ripgrep` command-line options directly in Python. The current version is 2.2.0, and the library maintains an active release cadence with updates typically occurring every few months.","language":"python","status":"active","last_verified":"Sun May 17","install":{"commands":["pip install ripgrepy"],"cli":null},"imports":["from ripgrepy import Ripgrepy"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import tempfile\nimport os\nfrom ripgrepy import Ripgrepy\n\n# Create a temporary directory and file for demonstration\nwith tempfile.TemporaryDirectory() as tmpdir:\n    test_file_path = os.path.join(tmpdir, 'test_document.txt')\n    with open(test_file_path, 'w') as f:\n        f.write('Hello, world!\\n')\n        f.write('This is a test line.\\n')\n        f.write('Another line saying hello.\\n')\n\n    print(f\"Searching in: {tmpdir}\")\n    print(f\"Content of {os.path.basename(test_file_path)}:\\n---\\n{open(test_file_path).read()}---\\n\")\n\n    # Initialize Ripgrepy with a regex pattern and the directory to search\n    # Note: The 'ripgrep' binary must be installed on your system (e.g., `brew install ripgrep` or `apt install ripgrep`)\n    rg = Ripgrepy('hello', tmpdir)\n\n    # Chain ripgrep options (e.g., --with-filename, --line-number)\n    # .run() executes the command, followed by an output method\n    results = rg.with_filename().line_number().run().as_string()\n    print(\"Search results (as string):\\n---\")\n    print(results)\n    print(\"---\")\n\n    # You can also get results as a dictionary or JSON\n    # results_dict = rg.run().as_dict()\n    # print(\"Search results (as dict):\\n---\")\n    # print(results_dict)\n    # print(\"---\")\n","lang":"python","description":"This quickstart demonstrates how to initialize `Ripgrepy` with a search pattern and a target directory (a temporary one in this example). It shows how to chain `ripgrep`'s command-line options like `with_filename()` and `line_number()`, execute the search with `run()`, and retrieve the output as a string. It also highlights the requirement for the underlying `ripgrep` binary to be installed on the system.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-17","installed_version":"2.2.0","pypi_latest":"2.2.0","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":2.4,"avg_import_s":0.05,"wheel_type":"sdist"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.04,"mem_mb":2,"disk_size":"19.3M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":2,"import_time_s":0.03,"mem_mb":2,"disk_size":"20M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.08,"mem_mb":2.5,"disk_size":"21.7M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":2,"import_time_s":0.06,"mem_mb":2.5,"disk_size":"22M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.06,"mem_mb":2.4,"disk_size":"11.7M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":3,"import_time_s":0.06,"mem_mb":2.4,"disk_size":"12M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.06,"mem_mb":2.5,"disk_size":"11.4M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":2.7,"import_time_s":0.06,"mem_mb":2.3,"disk_size":"12M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.04,"mem_mb":2,"disk_size":"18.9M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"ripgrepy","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":2.3,"import_time_s":0.03,"mem_mb":2,"disk_size":"19M"}]}}