import streamlit as st
from utils import load_css
st.set_page_config(
page_title="Knowledge Management RAG",
page_icon="🧠",
layout="wide"
)
load_css()
# Hero Section
col1, col2 = st.columns([2, 1])
with col1:
st.markdown('
Knowledge Management
', unsafe_allow_html=True)
st.markdown('Your Second Brain, Supercharged by AI
', unsafe_allow_html=True)
st.markdown("""
Welcome to your local-first RAG System.
Seamlessly upload documents, index them with advanced semantic search, and chat with your data using
state-of-the-art AI models. Secure, private, and powerful.
""", unsafe_allow_html=True)
with col2:
# Statistic / Quick Action Placeholder
st.markdown("""
🚀
Get Started
Upload your first document to unlock the power of AI.
""", unsafe_allow_html=True)
st.page_link("pages/Documents.py", label="Start Uploading", icon="📂", use_container_width=True)
st.divider()
# Key Features Section
st.markdown('✨ Powerful Features
', unsafe_allow_html=True)
col1, col2, col3 = st.columns(3)
def feature_card(icon, title, points, color_accent):
points_html = "".join([f"{p}" for p in points])
return f"""
"""
with col1:
st.markdown(feature_card(
"📄",
"Smart Ingestion",
[
"Docling Parsing: High-fidelity PDF processing.",
"Async Processing: Non-blocking uploads.",
"Status Tracking: Real-time updates."
],
"linear-gradient(90deg, #4CC9F0, #4361EE)" # Blue Cyan Gradient
), unsafe_allow_html=True)
with col2:
st.markdown(feature_card(
"🧠",
"Intelligent Retrieval",
[
"Semantic Search: Deep meaning extraction.",
"Local Vector DB: Private ChromaDB storage.",
"Query Expansion: Enhanced recall."
],
"linear-gradient(90deg, #7209B7, #F72585)" # Purple Pink Gradient
), unsafe_allow_html=True)
with col3:
st.markdown(feature_card(
"💬",
"Context-Aware Chat",
[
"Gemini Powered: Advanced reasoning.",
"History Aware: Fluid conversations.",
"Citations: (Coming Soon) Fact-checking."
],
"linear-gradient(90deg, #FF9E00, #FF0054)" # Orange Red Gradient
), unsafe_allow_html=True)
st.divider()
# How It Works / Getting Started
st.markdown('🚀 How It Works
', unsafe_allow_html=True)
step1, step2, step3 = st.columns(3)
with step1:
st.markdown("""
01
Upload
Go to Documents and upload your files.
""", unsafe_allow_html=True)
st.page_link("pages/Documents.py", label="Go to Documents", icon="📂", use_container_width=True)
with step2:
st.markdown("""
02
Process
The system parses, embeds, and indexes your content automatically.
""", unsafe_allow_html=True)
with step3:
st.markdown("""
03
Chat
Ask anything. Get instant answers grounded in your data.
""", unsafe_allow_html=True)
st.divider()
# Tech Stack Footer
with st.expander("🛠️ Under the Hood"):
st.markdown("""
-
🐍
Backend: FastAPI (Python)
-
🎨
Frontend: Streamlit
-
🧠
AI Model: Google Gemini 2.5 Flash
-
🗄️
Vector DB: ChromaDB (Local)
-
📄
Parser: Docling
""", unsafe_allow_html=True)
st.markdown("Built with ❤️ by Logan | version 2.1.0
", unsafe_allow_html=True)