import streamlit as st def indented_markdown(text, indentation=40, font_size=25): indented_text = f'

{text}

' st.markdown(indented_text, unsafe_allow_html=True) original_title = '

ASCARIS User Guide

' st.markdown(original_title, unsafe_allow_html=True) st.text('') st.text('') body = '

Input Format

' st.markdown(body, unsafe_allow_html=True) body = '

ASCARIS can be run on single or multiple variation data points.

' st.markdown(body, unsafe_allow_html=True) text = '

Run ASCARIS for only one SAV datapoint:

' st.markdown(text, unsafe_allow_html=True) text = 'Type your SAV data point in the following format:' indented_markdown(text, indentation=40, font_size=16) text = 'P13637-T-613-M' indented_markdown(text, indentation=40, font_size=16) st.text('') st.text('') text = '

Run ASCARIS for more than one datapoint:

' st.markdown(text, unsafe_allow_html=True) text = 'Type your SAV data point in the following format:' indented_markdown(text, indentation=40, font_size=16) text = 'P13637-T-613-M, Q9Y4W6-N-432-T, Q9Y4W6-N-432-T' indented_markdown(text, indentation=40, font_size=16) st.text('') st.text('') body = '

Selection of the Structure Resource

' st.markdown(body, unsafe_allow_html=True) body = '

Users should select their preferred protein structure resource for the annotation mapping step. If you wish to use PDB-ModBase-SwissModel, please select option 1(ModBase-SwissModel is only used when PDB models are not available for the given SAV); if you wish to use AlphaFold, please select 2 from the dropdown menu.

' st.markdown(body, unsafe_allow_html=True) st.text('') st.text('') body = '

Imputation

' st.markdown(body, unsafe_allow_html=True) body = '

ASCARIS calculates spatial distance-based features for annotations and domains, as well as SASA values, wherever structural information is available. Otherwise, such values are reported as NaN. ASCARIS feature vectors can be created either by imputing those NaN values in the dataset, or by leaving them as they are. Imputation is done by taking the median value of the corresponding column (feature). Users can choose whether or not to use imputation from the drop-down menu.

' st.markdown(body, unsafe_allow_html=True)