Full-Stack-Webentwicklung mit Python und Reflex
·
Kursüberblick
1
Reflex kennenlernen und Umgebung einrichten
2
Die Oberfläche mit Komponenten zeichnen
3
State und Vars: Daten zeichnen die Oberfläche
4
Events und Formulare: Kunden hinzufügen
5
Daten aufbereiten und Diagramme
6
Zusammenfassung, Debugging und nächste Schritte
·
Anhang
Zeit 0:00–0:35
Am Ende dieser Lektion läuft die Reflex-Standard-App in deinem Browser, und du kannst in einem Satz erklären, wie Reflex aus Python-Code eine Web-App macht.
Eine Web-App besteht normalerweise aus zwei Teilen:
In der Regel musst du also zwei Sprachen lernen und dazwischen eine API entwerfen. Reflex ist ein Full-Stack-Framework, mit dem du Frontend und Backend komplett in Python schreibst.
Das funktioniert in drei Schritten:
.web/.Die eine Python-Datei links teilt sich in zwei Wege: Die Oberflächen-Funktionen werden zu React kompiliert und gehen an den Browser, der State bleibt auf dem Server und wird über den Hin- und Rückweg ②→③ mit der Oberfläche synchron gehalten.
Hinweis für Lehrende — Diese drei Schritte kommen im ganzen Kurs immer wieder vor. Fasse sie in einem Satz zusammen: „Oberflächen-Funktionen laufen einmal, Event-Funktionen jedes Mal.“ Greif ihn in Lektion 3 wieder auf, wenn du erklärst, warum man dort kein if verwenden kann.
uv installieren: uv verwaltet Python-Versionen, virtuelle Umgebungen und Pakete in einem Tool.
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | shNode.js prüfen: Reflex nutzt Node.js oder Bun, um die Pakete für die Oberfläche (React) zu installieren und auszuführen. Reflex 0.10 setzt Node 22.22.0 oder neuer voraus.
node -v # muss v22.22.0 oder neuer seinuv init tutorial_261019 # Python-Projekt anlegen
cd tutorial_261019
uv add reflex # Reflex installieren (wird in pyproject.toml eingetragen)
uv run reflex init # Grundgerüst der Reflex-App erzeugen (Template auswählen)
uv run reflex run # Entwicklungsserver startenuv run führt den Befehl in der virtuellen Umgebung des Projekts (.venv) aus. Du musst sie nicht extra aktivieren.reflex init fragt nach einem Template. Wenn du mit einer leeren App starten willst, kannst du es direkt angeben: uv run reflex init --template blank.reflex run fertig ist, öffnest du die Adresse aus der Log-Zeile App running at: http://localhost:3000 im Browser. Ist Port 3000 belegt, weicht Reflex auf 3001 o. Ä. aus.Ctrl + C.Im Browser prüfen — Öffnest du direkt nach dem Anlegen mit --template blank die Adresse http://localhost:3000, solltest du diese Seite sehen. Das Sonnen-Symbol oben rechts schaltet den Dark Mode um.
localhost:3000
Live-VorschauDiese Probleme sind bei der Vorbereitung des Kurses tatsächlich aufgetreten. Die Teilnehmenden stoßen sehr wahrscheinlich auf dieselben, also weise am besten vorab darauf hin.
| Symptom | Ursache | Lösung |
|---|---|---|
UnicodeEncodeError: 'cp949' codec can't encode character '—' während reflex init | Unter Windows ist die System-Codepage nicht UTF-8. Beim Schreiben von AGENTS.md scheitert Python dann an Sonderzeichen. Im Beispiel ist es cp949 (koreanisches Windows); unter deutschem Windows ist die Legacy-Codepage cp1252, und auch sie kann an Zeichen wie '—' scheitern. | setx PYTHONUTF8 1 ausführen, das Terminal neu starten und reflex init erneut ausführen |
restartWithMergedOptions() was called, but the process has already been restarted während reflex run | Node ist älter als die vorausgesetzte Version, deshalb erzwingt Reflex die Bun-Runtime, und auf diesem Weg schlägt der Neustart von React Router fehl | Node auf 22.22.0 oder neuer aktualisieren (z. B. winget upgrade --id OpenJS.NodeJS.22) |
setx gesetzte Umgebungsvariablen gelten erst in neu geöffneten Terminals. Nutzt du das Terminal in VS Code, starte auch VS Code neu.winget list --name Node die tatsächliche Paket-ID.node -v zeigt 22.22.0 oder neuer.uv run reflex run siehst du die Standardseite im Browser.Über neue Lektionen informiert werden
Wir schicken dir eine E-Mail, wenn dieser Kurs neue Lektionen bekommt oder ein Folgekurs erscheint.
R
ReflexKR
Python und Reflex zum Anfassen. Alle Beispiele wurden mit Reflex 0.10.0 ausgeführt und geprüft.
ReflexKR ist kostenlos und ohne Werbebanner. Wenn es dir geholfen hat, kannst du es mit einem Kaffee unterstützen. ☕ Spendier uns einen Kaffee
Hinweis zu Affiliate-Links© 2026 ReflexKR · Since 2026 · CC BY-NC 4.0
Fragen & Antworten
Frag alles zu dieser Lektion. Fragen aus allen Sprachversionen dieser Seite erscheinen hier gemeinsam.