================== Database Search ================== Syndirella offers three options for database search functionality: Arthor, Hippo, and Postera (Manifold). All three tools support superstructure searches to find commercially available compounds that can be used as reactants in synthesis. Arthor ------ Arthor is a free, publicly accessible database search tool that provides access to multiple chemical databases including ZINC, Enamine, Mcule, and stock databases. **Usage:** When running Syndirella, specify Arthor as the database search tool: .. code-block:: bash syndirella run --input input.csv --output output_dir --db_search_tool arthor **Default Vendors:** The default vendor list includes: - ``enamine_real`` - Enamine REAL Database - ``stock`` - In-Stock database - ``mcule`` - Mcule databases (includes multiple Mcule variants) - ``zinc`` - ZINC databases (includes multiple ZINC variants) **Available Vendor Options:** Arthor supports a wide range of vendor databases: check the `Arthor documentation `_ for more details. **Checking Available Databases:** You can programmatically check which databases are available: .. code-block:: python from syndirella.database.Arthor import Arthor arthor = Arthor() available_dbs = arthor.get_available_databases() print(available_dbs) Postera (Manifold) ------------------ Postera's Manifold API provides access to a comprehensive database of commercially available compounds. It supports superstructure searches across multiple vendor catalogs. **Setup:** 1. Get your Manifold API key from your `Postera account `_. 2. Set the required environment variables: .. code-block:: bash export MANIFOLD_API_KEY=[YOUR_API_KEY] export MANIFOLD_API_URL=[API_URL] # Example: # export MANIFOLD_API_KEY=your_api_key_here # export MANIFOLD_API_URL=https://api.postera.ai .. attention:: A Manifold Pro account is required for API access. **Usage:** When running Syndirella, specify Postera as the database search tool: .. code-block:: bash syndirella run --input input.csv --output output_dir --db_search_tool manifold **Default Vendors:** The default vendor list includes: - ``enamine_bb`` - Enamine Building Blocks - ``mcule`` - Mcule database - ``mcule_ultimate`` - Mcule Ultimate database - ``enamine_real`` - Enamine REAL database - ``enamine_made`` - Enamine Made database Hippo ----- Hippo provides local database search functionality using a HIPPO database file. This option is useful when you have your own database or want to search locally without API dependencies. **Installation** HIPPO requires ``rdkit>=2024.9.6``; AiZynthFinder declares ``rdkit<2024``. Install in this order so pip does not pull AiZynthFinder's RDKit: .. code-block:: bash pip install aizynthfinder --no-deps pip install syndirella[hippo] conda install -c conda-forge chemicalite See the `HIPPO documentation `_ for full setup and version compatibility. To create a minimal example database (e.g. at ``~/CursorProjects/HIPPO/reference_db.sqlite``), run ``python scripts/create_hippo_example_db.py [OUTPUT_DIR]``. **Setup** Have a HIPPO database file available and initialize the Hippo search with the database path. **Usage** Specify Hippo as the database search tool: .. code-block:: bash syndirella run --input input.csv --output output_dir --db_search_tool hippo --reference_db /path/to/database **Default Behavior** If no database search tool is specified, Syndirella will use the default tool (Arthor).