File size: 2,036 Bytes
c5f2040
 
 
 
 
 
 
 
 
 
 
 
 
 
 
ecdea35
 
 
 
 
 
 
 
 
 
c5f2040
 
 
 
 
 
 
 
 
ecdea35
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c5f2040
 
ecdea35
c5f2040
ecdea35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import streamlit as st
import pandas as pd
import rdkit
import streamlit_ketcher
from streamlit_ketcher import st_ketcher
import run

# Page setup
st.set_page_config(page_title="DeepDAP", page_icon="🔋", layout="wide")
st.title("🔋DeepDAP")

# Connect to the Google Sheet

url1= r"https://docs.google.com/spreadsheets/d/1AKkZS04VF3osFT36aNHIb4iUbV8D1uNfsldcpHXogj0/gviz/tq?tqx=out:csv&sheet=dap"
df1 = pd.read_csv(url1, dtype=str, encoding='utf-8')
col1, col2 = st.columns(2)
with col1:
	text_search = st.text_input("🔍Search papers or molecules", value="")
	m1 = df1["Donor_Name"].str.contains(text_search)
	m2 = df1["reference"].str.contains(text_search)
	m3 = df1["Acceptor_Name"].str.contains(text_search)
	df_search = df1[m1 | m2|m3]
with col2:
	st.link_button("📝Database",  r"https://docs.google.com/spreadsheets/d/1AKkZS04VF3osFT36aNHIb4iUbV8D1uNfsldcpHXogj0")
	st.caption('🎉If you want to update the database, click the button.')
if text_search:
    st.write(df_search)
    st.download_button( "⬇️Download edited files as .csv", df_search.to_csv(), "df_search.csv", use_container_width=True)
edited_df = st.data_editor(df1, num_rows="dynamic")

st.download_button(
    "⬇️ Download edited files as .csv", edited_df.to_csv(), "edited_df.csv", use_container_width=True
)

option = st.selectbox(
   "How would you like to be contacted?",
   ("Donor", "Acceptor"), placeholder="Select the type of active layer..."
)
if option == 'Acceptor':

	molecule = st.text_input("👨‍🔬Acceptor Molecule" )
	acceptor= st_ketcher(molecule )
	st.markdown(f"🏆New SMILES of edited acceptor molecules: {acceptor}")
	donor= st.text_input("📋 Donor Molecule")
if option =='Donor':
	do= st.text_input("👨‍🔬Donor Molecule" )
	donor = st_ketcher(do)
	st.markdown(f"🏆New SMILES of edited donor molecules: {donor}")
	acceptor = st.text_input("📋 Acceptor Molecule")
try:
    pce = run.smiles_aas_test( str(acceptor ), str(donor) )
    st.markdown(f"⚡PCE: ``{pce}``")
except:
    st.markdown(f"⚡PCE:  None  ")