---
license: mit
title: Cofolding Input
sdk: gradio
colorFrom: red
---
# `gradio_cofoldinginput`
Component to enter protein and DNA sequences + small molecules for cofolding
## Installation
```bash
pip install gradio_cofoldinginput
```
## Usage
```python
import gradio as gr
from gradio_cofoldinginput import CofoldingInput
import json
def predict(input):
input = json.dumps(input)
return input
with gr.Blocks() as demo:
jobname = gr.Textbox(label="Job Name")
inp=CofoldingInput(label="Input")
preinput = {"chains": [
{
"class": "DNA",
"sequence": "ATGCGT",
"chain": "A",
"msa": True
},
{
"class": "protein",
"sequence": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
"chain": "B",
"msa": True
},
{
"class": "ligand",
"name": "ZN",
"smiles": "",
"sdf": "",
"chain": "C"
},
{
"class": "ligand",
"smiles": "CCCCCCCCCCCCCCCCCCCC",
"name": "",
"sdf": "",
"chain": "D"
}
], "covMods":[]
}
# inp2=CofoldingInput(preinput, label="Input prefilled")
btn = gr.Button("Submit")
out = gr.HTML()
gr.Examples([["test",preinput]], inputs=[jobname,inp])
btn.click(predict, inputs=[inp], outputs=[out])
if __name__ == "__main__":
demo.launch()
```
## `CofoldingInput`
### Initialization
name | type | default | description |
---|---|---|---|
value |
```python dict | None ``` | {"chains": [], "covMods": []} |
list of items. |
label |
```python str | None ``` | None |
The label for this component. Appears above the component and is also used as the header if there are a table of examples for this component. If None and used in a `gr.Interface`, the label will be the name of the parameter this component is assigned to. |
info |
```python str | None ``` | None |
additional component description. |
every |
```python float | None ``` | None |
If `value` is a callable, run the function 'every' number of seconds while the client connection is open. Has no effect otherwise. The event can be accessed (e.g. to cancel it) via this component's .load_event attribute. |
show_label |
```python bool | None ``` | None |
if True, will display label. |
container |
```python bool ``` | True |
If True, will place the component in a container - providing some extra padding around the border. |
scale |
```python int | None ``` | None |
relative size compared to adjacent Components. For example if Components A and B are in a Row, and A has scale=2, and B has scale=1, A will be twice as wide as B. Should be an integer. scale applies in Rows, and to top-level Components in Blocks where fill_height=True. |
min_width |
```python int ``` | 160 |
minimum pixel width, will wrap if not sufficient screen space to satisfy this value. If a certain scale value results in this Component being narrower than min_width, the min_width parameter will be respected first. |
interactive |
```python bool | None ``` | None |
if True, will be rendered as an editable textbox; if False, editing will be disabled. If not provided, this is inferred based on whether the component is used as an input or output. |
visible |
```python bool ``` | True |
If False, component will be hidden. |
elem_id |
```python str | None ``` | None |
An optional string that is assigned as the id of this component in the HTML DOM. Can be used for targeting CSS styles. |
autofocus |
```python bool ``` | False |
If True, will focus on the textbox when the page loads. Use this carefully, as it can cause usability issues for sighted and non-sighted users. |
autoscroll |
```python bool ``` | True |
None |
elem_classes |
```python list[str] | str | None ``` | None |
An optional list of strings that are assigned as the classes of this component in the HTML DOM. Can be used for targeting CSS styles. |
render |
```python bool ``` | True |
If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later. |