architect/_archive/2025-11-cleanup/templates/library/streamlit/README.md

Streamlit Library — Документация и ресурсы

Версия: 1.0
Дата создания: 2025-11-10
Статус: Production ready


📂 СОДЕРЖИМОЕ

Документация

  1. FREE_COMPONENTS_GUIDE.md — Полное руководство
    - Все встроенные компоненты (60+)
    - TOP community компоненты
    - Streamlit Community Cloud (лимиты)
    - Рекомендации по оптимизации
    - ~700 строк документации

  2. FREE_COMPONENTS_QUICK_REF.md — Краткая справка
    - TOP-10 встроенных компонентов
    - TOP-10 community компонентов
    - Быстрый старт
    - Советы по оптимизации


🎯 ДЛЯ ЧЕГО ЭТОТ РАЗДЕЛ

Цель:

Собрать всю важную информацию о бесплатных возможностях Streamlit в одном месте.

Что здесь:

✅ Какие компоненты 100% бесплатные
✅ Что платное (только Enterprise)
✅ Лимиты бесплатного хостинга
✅ Рекомендации по использованию


💰 ГЛАВНОЕ

✅ Что бесплатно:

  1. Весь Streamlit framework (open-source, Apache 2.0)
  2. Все 60+ встроенных компонентов API
  3. 90%+ community компонентов (тысячи бесплатных)
  4. Streamlit Community Cloud (бесплатный публичный хостинг)
  5. Создание custom компонентов
  6. Локальная разработка (без ограничений)

❌ Что платное:

Для 99% разработчиков Streamlit полностью бесплатен!


🚀 БЫСТРЫЙ СТАРТ

Установка

pip install streamlit

Создать приложение

# app.py
import streamlit as st

st.title("Моё первое приложение")
name = st.text_input("Как вас зовут?")
if name:
    st.write(f"Привет, {name}!")

Запустить

streamlit run app.py

📚 СТРУКТУРА ДОКУМЕНТАЦИИ

templates/library/streamlit/
├── README.md                           # Этот файл (навигация)
├── FREE_COMPONENTS_GUIDE.md            # Полное руководство (700+ строк)
└── FREE_COMPONENTS_QUICK_REF.md        # Краткая справка

🎨 ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ

1. Простое приложение с формой

import streamlit as st

with st.form("user_form"):
    name = st.text_input("Имя")
    age = st.number_input("Возраст", 0, 100)
    submitted = st.form_submit_button("Отправить")

    if submitted:
        st.success(f"Привет, {name}! Тебе {age} лет.")

2. Таблица с данными

import pandas as pd
import streamlit as st

df = pd.DataFrame({
    "name": ["Alice", "Bob", "Charlie"],
    "age": [25, 30, 35],
    "city": ["NY", "LA", "SF"]
})

st.dataframe(df, use_container_width=True)

3. График

import streamlit as st
import pandas as pd

data = pd.DataFrame({
    "date": pd.date_range("2024-01-01", periods=30),
    "sales": [100, 120, 150, 130, 180, ...]
})

st.line_chart(data, x="date", y="sales")

🌟 TOP-10 COMMUNITY КОМПОНЕНТОВ

Все бесплатные и open-source:

  1. Pygwalker (8,223⭐) — интерактивная визуализация
  2. Streamlit-Authenticator (919⭐) — авторизация
  3. Streamlit-AgGrid (841⭐) — продвинутые таблицы
  4. Streamlit-WebRTC (1,022⭐) — видео/аудио стримы
  5. Streamlit-Option-Menu — красивое меню
  6. Streamlit-Extras — коллекция виджетов
  7. Streamlit-Folium — интерактивные карты
  8. Streamlit-Lottie — анимации
  9. Streamlit-Elements — MUI components
  10. Plotly-Resampler — оптимизация графиков

Галерея: https://streamlit.io/components


☁️ БЕСПЛАТНЫЙ ХОСТИНГ

Streamlit Community Cloud

URL: https://streamlit.io/cloud

Что бесплатно:
- ✅ Публичный хостинг приложений
- ✅ Неограниченное количество приложений
- ✅ GitHub интеграция
- ✅ SSL сертификаты
- ✅ Secrets management

Лимиты:
- CPU: до 2 ядер
- RAM: до 2.7 GB
- Storage: 50 GB

Деплой за 3 шага:
1. Push код на GitHub
2. Зайти на https://share.streamlit.io
3. Подключить репозиторий и Deploy! 🚀


💡 КОГДА ИСПОЛЬЗОВАТЬ

Streamlit идеален для:

Не подходит для:


🔗 ПОЛЕЗНЫЕ ССЫЛКИ

Официальные:

Сообщество:


📈 СТАТИСТИКА

Streamlit GitHub:
- ⭐ 34,000+ stars
- 🔧 3,000+ contributors
- 📦 100+ releases
- 🌍 Используется в 100+ странах

Streamlit Components:
- 🎨 1,000+ компонентов
- 💯 90%+ бесплатные
- 📦 Доступны через pip


🛠️ СВЯЗАННЫЕ РЕСУРСЫ

В этом workspace:

Templates:
- templates/by-feature/auth/streamlit-auth-v1/ — готовая авторизация
- templates/by-task/crud/streamlit-crud-v1/ — CRUD страница
- templates/by-task/dashboard/table-filters-v1/ — таблицы с фильтрами

Components:
- components/shared/lib/formatters.py — форматирование для Streamlit
- components/shared/lib/validators.py — валидация данных

Tests:
- tests/library/e2e/streamlit_*.js — E2E тесты страниц Streamlit


✅ ВЫВОДЫ

Streamlit — один из лучших бесплатных инструментов для быстрой разработки data apps.

Что делает его отличным:
- ✅ 100% бесплатный и open-source
- ✅ Простой Python API (без HTML/CSS/JS)
- ✅ 60+ встроенных компонентов
- ✅ Тысячи community компонентов
- ✅ Бесплатный хостинг
- ✅ Активное сообщество

Используйте эту документацию для максимально эффективной работы со Streamlit!


Версия: 1.0
Дата: 2025-11-10
Автор: Claude Code
Лицензия: Apache 2.0 (Streamlit framework)