Transform your protein structure prediction workflow with AFusion - a sleek, intuitive graphical interface that makes AlphaFold3 accessible to everyone. No more command-line hassles - just point, click, and predict.
Demo site (generate input JSON files ONLY)
Usable visualization site (fully usable)
- Features
- Prerequisites
- Installation and Running
- Usage
- Documentation
- ToDo
- Screenshots
- License
- Acknowledgements
- GUI Installer: Step-by-step visual installation wizard
- Auto-Configuration: Handles environment setup and dependencies
- Visual Workflow: Clean, modern interface for job configuration
- Multi-Entity Support: Process proteins, RNA, DNA, and ligands
- Advanced Options: Customize MSA, templates, and modifications
- π Integrated Pipeline: Direct AlphaFold3 execution from GUI
- π₯οΈ Live Monitoring: Real-time process tracking and console output
- 𧩠Batch Processing: Python API for automated predictions
- AlphaFold 3 Output Analysis System: Automatically analyze and visualize results with customizable visualizations and generate detailed PDF reports for streamlined insights.
- Enhanced Visualization Features (New in this fork):
- Multiple visualization styles (cartoon, stick, line, sphere)
- Flexible coloring schemes (confidence, chain, secondary structure, rainbow)
- Interactive residue selection and chain sequence viewer
- Advanced export capabilities for scientific and 3D printing formats
- Improved PAE matrix visualization and confidence metrics display
Before using AFusion, ensure that you have the following:
-
π³ Docker Installed: Docker is required to run AlphaFold 3. Install Docker from the official website.
-
𧬠AlphaFold 3 Installed: AFusion requires AlphaFold 3 to be installed and set up on your system. Follow the installation instructions provided in the AlphaFold 3 GitHub Repository to deploy AlphaFold 3. Or you can run step-by-step GUI by:
afusion install
-
π Python 3.10 or Higher: AFusion is built with Python and requires Python 3.10 or higher.
-
Install AFusion
Run the following command in your terminal to install AFusion:
pip install afusion
-
Run AFusion GUI
After installation, you can start AFusion by running:
afusion run
This will launch the AFusion graphical user interface (GUI) in your default web browser.
Please Note:
-
𧬠AlphaFold 3 Installation: Ensure you have correctly installed AlphaFold 3, including model parameters and required databases, following the AlphaFold 3 Installation Guide.
-
βοΈ Docker Configuration: After installing Docker, make sure it is running properly and that your user has permission to execute Docker commands.
-
π¦ Streamlit is Included in Dependencies: AFusion's installation will automatically install all required dependencies, including Streamlit. There's no need to install it separately.
-
π Start the Streamlit App
From the project directory, run:
afusion run
-
π Access the Application
- The application will launch, and Streamlit will provide a local URL (e.g.,
http://localhost:8501
). - Open the provided URL in your web browser to access AFusion.
- The application will launch, and Streamlit will provide a local URL (e.g.,
Find more about input in here.
- π Logo and Introduction: You'll see the AFusion logo and a brief description.
- π Navigation Sidebar: Use the sidebar on the left to navigate to different sections of the app.
- π·οΈ Job Name: Enter a descriptive name for your job.
- π’ Model Seeds: Provide integer seeds separated by commas (e.g.,
1,2,3
).
- π¬ Number of Entities: Select how many entities you want to add (Proteins, RNA, DNA, Ligand).
- π Entity Details: For each entity:
- βοΈ Entity Type: Select the type (Protein, RNA, DNA, Ligand).
- π Entity ID: Provide an identifier for the entity.
- 𧬠Sequence Input: Enter the sequence information.
- βοΈ Modifications: Optionally add modifications with their types and positions.
- π MSA Options: Choose MSA generation options and provide MSA data if applicable.
- π Templates: Optionally add template data with mmCIF content and indices.
- π Add Bonds: Check the box to add bonded atom pairs.
- βοΈ Define Bonds: For each bond, provide details for the first and second atoms, including entity IDs, residue IDs, and atom names.
- π User CCD Input: Paste or enter custom CCD data in mmCIF format.
- π Review JSON Content: The application generates the JSON input file based on your entries. You can review it here.
-
ποΈ Paths Configuration:
- π AF Input Path: Specify the path to the AlphaFold input directory (e.g.,
/home/user/af_input
). - π AF Output Path: Specify the path to the output directory (e.g.,
/home/user/af_output
). - π Model Parameters Directory: Provide the path to the model parameters directory.
- π Databases Directory: Provide the path to the databases directory.
- π AF Input Path: Specify the path to the AlphaFold input directory (e.g.,
-
βοΈ Execution Options:
- ποΈ Run Data Pipeline: Choose whether to run the data pipeline (CPU-intensive).
- π» Run Inference: Choose whether to run inference (requires GPU).
- πΎ Save JSON File: Click the "Save JSON File" button to save the generated JSON to the specified input path.
βΆοΈ Run AlphaFold 3 Now: Click the "Run AlphaFold 3 NowβΆοΈ " button to execute the AlphaFold 3 prediction using the Docker command.- π§ Docker Command: The exact Docker command used is displayed for your reference.
- π Command Output: Execution output is displayed within the app for monitoring.
- Full Documentation in here
-
π Bulid Documentation: Tutorial for using the AFusion API in Python scripts for batch predictions. -
β»οΈ Refactor Code and Publish to PyPI: Refactor the project code for improved modularity and maintainability, and publish the latest version to PyPI for easy installation. -
π Develop AlphaFold result analysis system: Design and implement a comprehensive analysis pipeline for AlphaFold prediction results.-
Update the system.
-
- βοΈ Preset Common Small Molecules & Metal Ions: Add a dedicated section for quick access to commonly used small molecules and metal ions.
- π οΈ New Tool for Chemical Small Molecules: Develop a new tool to handle and model chemical small molecules, supporting seamless integration into the prediction pipeline.
-
π₯οΈ Add Console Output: Implement a backend console for output to track processes and debug more effectively. -
𧩠Create API for Batch Predictions: Develop a standalone function API to allow users to perform batch predictions with afusion in Python scripts. -
π§ Create Guided Installation GUI: To simplify the installation process. -
π¨ Enhanced Visualization Features: Implement advanced visualization capabilities with multiple styles and export options.
This project is licensed under the GPL3 License - see the LICENSE file for details.
- Original Project: Created by Hanziwww
- Visualization Enhancements: This fork includes additional visualization features while maintaining the core functionality of the original project
- Enhanced Version: Maintained by Shivp1413
- AlphaFold 3: This GUI is designed to work with AlphaFold 3 by DeepMind
- Streamlit: AFusion is built using Streamlit
- Contributors: Thanks to all contributors to the original project!
If you encounter any issues or have suggestions for improvements, please open an issue or submit a pull request.
Happy Folding! π§¬