File size: 1,159 Bytes
995a61e
6e00079
 
 
995a61e
 
 
 
 
 
 
6e00079
 
995a61e
6e00079
 
 
995a61e
6e00079
 
995a61e
6e00079
 
 
 
 
 
 
 
 
995a61e
6e00079
 
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
import streamlit as st
from data_loader import load_data, get_unique_mood, get_unique_tags
from utils import apply_filters
from ui_components import render_sidebar, render_main_content, load_css

# Настройки страницы
st.set_page_config(layout="wide", page_icon="🧙", page_title="Fantasy Characters Explorer")

# Загрузка данных
df = load_data()

# Загрузка стилей
st.markdown(f"<style>{load_css()}</style>", unsafe_allow_html=True)

# Получение уникальных значений для фильтров
moods = ["Все"] + get_unique_mood(df)
all_tags = get_unique_tags(df)

# Рендеринг сайдбара с фильтрами
selected_filters = render_sidebar(moods, all_tags)

# Применение фильтров
filtered_df = apply_filters(
    df=df,
    search_query=selected_filters["search_query"],
    absurdity_range=selected_filters["absurdity_range"],
    selected_mood=selected_filters["selected_mood"],
    selected_tags=selected_filters["selected_tags"],
    sort_option=selected_filters["sort_option"]
)

# Основной контент
render_main_content(filtered_df)