CoolFace
Apppublic

GENOMICS-CDDBRG/Phylogenetic_Tree_Builder

sourceHugging Faceupdated 1mo agoView on Hugging Face
0likes
app.py54 linesDownload Raw Back to root
1"""2Woloji Genomic Suite v1.03A single Streamlit deployment that bundles five sequence analysis tools behind4one sidebar. Each tool keeps its own logic in tools/<name>.py and exposes a5render() function. This file only handles page configuration and navigation.6"""7 8import streamlit as st9 10st.set_page_config(11    page_title="Woloji Genomic Suite v1.0",12    page_icon=":dna:",13    layout="wide",14    initial_sidebar_state="expanded",15)16 17import phyloforge18import crispr_cas19import mge_plasmid20import primer_design21import geneclean_blast22 23TOOLS = {24    "PhyloForge (phylogenetic trees)": phyloforge,25    "CRISPR-Cas Detector": crispr_cas,26    "MGE / Plasmid Detector": mge_plasmid,27    "Primer Design Tool": primer_design,28    "GeneClean-BLAST": geneclean_blast,29}30 31if "active_tool" not in st.session_state:32    st.session_state["active_tool"] = list(TOOLS.keys())[0]33 34with st.sidebar:35    st.title("Woloji Genomic Suite v1.0")36    st.caption("Sequence analysis tools for the lab, in one place.")37    st.markdown("---")38    for name in TOOLS:39        is_active = st.session_state["active_tool"] == name40        if st.button(41            name,42            use_container_width=True,43            type="primary" if is_active else "secondary",44            key=f"nav_{name}",45        ):46            st.session_state["active_tool"] = name47    st.markdown("---")48    st.caption(49        "Some tools call external programs (MAFFT, IQ-TREE, BLAST+, Platon, "50        "IntegronFinder). If a step reports the tool as missing, it needs to be "51        "installed in this Space's runtime."52    )53 54TOOLS[st.session_state["active_tool"]].render()