Toolverse
Wszystkie skille

implementing-new-features

autor: streamlit

Przewodnik implementacji nowych funkcji Streamlit obejmujący backend, frontend i protobuf

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Frontend
Wyświetlenia
23

O skillu

Skill zawiera kompletny przewodnik do dodawania nowych elementów, widgetów i funkcji w Streamlit. Obejmuje trzy główne obszary implementacji: backend (lib/streamlit/), frontend (frontend/) oraz protobuf (proto/). Zawiera instrukcje dotyczące testowania — testy jednostkowe Python, testy Vitest oraz testy end-to-end Playwright. Skill wskazuje dokładną kolejność kroków implementacji, od zmian w protobufach, przez backend i frontend, aż po weryfikację całej implementacji.

Jak używać

  1. Zapoznaj się z architekturą Streamlit, zwłaszcza runtime'em backendu, renderowaniem frontendu i komunikacją WebSocket, aby zrozumieć, jak nowa funkcja będzie się integrować z systemem.

  2. Rozpocznij od zmian w plikach protobuf w katalogu proto/. Jeśli dodajesz nowy element, dodaj go do proto/streamlit/proto/Element.proto, a następnie uruchom make protobuf aby wygenerować niezbędne pliki.

  3. Przejdź do implementacji backendu w lib/streamlit/. Dodaj nowy element do lib/streamlit/__init__.py i utwórz testy jednostkowe w lib/tests. Uruchom testy za pomocą uv run pytest lib/tests/streamlit/nazwa_testu.py.

  4. Zaimplementuj frontend w katalogu frontend/. Dla nowych elementów dodaj je do frontend/lib/src/components/core/Block/ElementNodeRenderer.tsx. Napisz testy Vitest w plikach *.test.tsx i uruchom je poleceniem cd frontend && yarn vitest.

  5. Dodaj testy end-to-end w e2e_playwright/ używając Playwright. Uruchom je za pomocą make run-e2e-test e2e_playwright/nazwa_testu.py.

  6. Uruchom make autofix aby automatycznie naprawić formatowanie i błędy lintingu, a następnie make verify aby potwierdzić, że cała implementacja działa poprawnie.

Podobne skille