/
logvinokda
/
pptx_skill
Обзор
Документация
Войти
/
logvinokda
/
pptx_skill
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
example_deck.py
133 строки
5 KB
Dmitry Logvinok
feat: deck_kit v2 — charts, tables, 8 new layouts, 3 new palettes, infrastructure
09 июн 2026, 06:55
09 июн 2026, 06:55
34c8d31
Код
Авторство
О чём код?
""" example_deck.py — витрина всех раскладок deck_kit v2. Запусти c аргументом-палитрой (по умолчанию midnight): python3 example_deck.py python3 example_deck.py forest """ import sys from deck_kit import Deck, render_png def build(palette="midnight"): d = Deck(palette=palette) d.title("Расширенный deck_kit v2", f"Витрина всех раскладок · Палитра {palette}") d.agenda([ (1, "Данные и аналитика", "Чарты, таблицы — редактируемые в PowerPoint"), (2, "Контентные раскладки", "Цитата, таймлайн, сравнение, KPI-ряд"), (3, "Инфраструктура", "Авто-сетка, авто-шрифт, нумерация"), ]) d.section("Данные и аналитика", number=1) d.bar_chart( "Квартальная выручка по продуктам", categories=["Q1", "Q2", "Q3", "Q4"], series_data=[ ("Продукт A", [120, 135, 162, 178]), ("Продукт B", [85, 92, 110, 125]), ("Продукт C", [45, 55, 68, 82]), ], ) d.line_chart( "Динамика NPS за полгода", categories=["Янв", "Фев", "Мар", "Апр", "Май", "Июн"], series_data=[ ("Платформа", [58, 62, 61, 65, 68, 72]), ("Мобильное приложение", [42, 45, 48, 52, 55, 60]), ], ) d.pie_chart( "Распределение каналов трафика", categories=["Organic", "Paid", "Referral", "Direct", "Social"], values=[42, 28, 15, 10, 5], ) d.table( "Ключевые метрики Q2", headers=["Метрика", "Значение", "Динамика", "Цель"], rows=[ ["DAU", "1.2M", "+12%", "1.3M"], ["Retention D30", "68%", "+3pp", "70%"], ["Time-to-market", "4.2d", "-1.8d", "3d"], ["SLA", "99.95%", "+0.03pp", "99.99%"], ["NPS", "72", "+10", "75"], ["ARPU", "$14.20", "+$2.10", "$15.00"], ], col_widths=[2.5, 3.0, 3.0, 3.0], ) d.section("Контентные раскладки", number=2) d.bullets_two_col( "Приоритеты команды", "Инфраструктура", ["Миграция на Kubernetes 1.32", "Автоскейлинг по нагрузке", "CI/CD за 12 минут"], "Продукт", ["Новая витрина аналитики", "Интеграция с CRM", "API v2 с обратной совместимостью"], ) d.quote( "Лучшая метрика для продукта — не NPS и не retention. " "Это количество пользователей, которые порекомендовали бы его коллеге.", "Евгений Калинин", "CPO, Platforma Inc.", ) d.kpi_row("Итоги полугодия в цифрах", [ ("$48M", "Годовая выручка"), ("99.98%", "Доступность"), ("1.2M", "Активных пользователей"), ("4.2 дня", "Time-to-market"), ]) d.comparison( "Миграция на микросервисы", "До", ["Монолит — деплой 45 минут", "Один отказ = вся система стоит", "Релизы раз в 2 недели"], "После", ["30 сервисов — деплой за 3 минуты", "Circuit breaker изолирует отказы", "Релизы несколько раз в день"], ) d.timeline("Roadmap 2026", [ ("Q1", "Запуск платформы v1.0"), ("Q2", "Интеграции и партнёры"), ("Q3", "Масштабирование ×3"), ("Q4", "Международная экспансия"), ]) d.section("Инфраструктура", number=3) d.auto_grid("Возможности платформы", [ ("Аналитика", "Real-time дашборды, алерты, кастомные отчёты"), ("Безопасность", "SSO, RBAC, аудит действий, шифрование"), ("Интеграции", "50+ коннекторов к CRM, ERP, BI-системам"), ("Масштабирование", "Автоскейлинг до 100K RPS без деградации"), ("Поддержка", "24/7, SLA 99.99%, выделенный инженер"), ]) d.cards("Технологический стек", [ ("Backend", "Go, Rust, Python — gRPC, Kafka, PostgreSQL"), ("Frontend", "React, TypeScript — микрофронтенды, Webpack"), ("Infra", "Kubernetes, Terraform, Vault, Grafana Stack"), ]) d.stat("×3.5", "рост производительности после миграции", "Бенчмарк: throughput на одном инстансе") d.title("Спасибо за внимание", "Вопросы и обсуждение") return d.save("example_deck.pptx") if __name__ == "__main__": pal = sys.argv[1] if len(sys.argv) > 1 else "midnight" print(f"Палитра: {pal}") path = build(pal) print("Собрано:", path) print("Превью:", render_png(path))