Tip
You do not need to compile the app yourself. Ready-to-install Android packages are available in Releases:
📥 Direct APK Download: Python-IDE-1.1.apk (~81 MB, v1.1)
🏷️ All Versions & Changelogs: GitHub Releases
A full-featured native Android Python Integrated Development Environment (IDE) and Python Interpreter.
Powered by the integrated Chaquopy Python 3.10 Engine, the app executes Python code natively and completely offline on your Android device – with zero cloud dependencies or external servers. Out of the box, it supports numerical computing with NumPy, data visualization with Matplotlib, multithreading, socket network communication, IoT applications, and interactive WebViews.
- 🚀 True "Zero Setup": No Linux terminal, no flaky
pip installerrors, and no compilation headaches on your phone. C and math libraries (such as NumPy and Matplotlib) come precompiled, tested, and ready to run immediately. - 📱 Touch-Optimized Development: Large action buttons (Run ▶, Stop ⏹, Save 💾), quick-access bar for programming symbols (
Tab,:,(),[],def,class,try,while,with), and an integrated slide-out file explorer make mobile coding comfortable. - 🖥️ Smart 3-Tab Architecture: Dedicated fullscreen views for Code Editor, ANSI Streaming Terminal, and Visual Web/Plot Output – all accessible with a single swipe or tab tap.
- 📊 Seamless Visualization Without Desktop: When your script calls
plt.show(), the IDE intercepts the call and renders the plot in high resolution. Local HTML/JS dashboards and HTTP servers are rendered interactively in the embedded WebView. - 🛑 Reliable Emergency Stop: Infinite loops or blocking network sockets can be cleanly interrupted with a tap via
KeyboardInterruptwithout freezing Android ("ANR - App Not Responding"). - 📶 Direct Local Network Access: Unlike cloud notebooks, your phone on Wi-Fi has direct socket access to local LAN IP addresses (e.g., smart home devices, microcontrollers, Modbus inverters, or routers).
- 🔒 100% Offline & Private: Runs fully self-contained on the device – no telemetry, no cloud costs, no data leaks, and zero dependence on an active internet connection.
- 🛠️ Maximum Flexibility: Tweak calculations, test algorithms, or write new scripts on the go in seconds – without ever rebuilding an entire Android app.
| Release | File | Target OS | Download Link | Notes |
|---|---|---|---|---|
| v1.1 (Latest) | Python-IDE-1.1.apk |
Android 7.0+ (arm64-v8a, x86_64) |
👉 Download APK v1.1 | Added editor snippets (try, while, with, self.), version footer, CI automation |
| v1.0 | Python-IDE-1.0.apk |
Android 7.0+ (arm64-v8a, x86_64) |
📦 Download v1.0 | Initial release with NumPy, Matplotlib & Modbus |
| Repo Mirror | Python-IDE-1.1.apk |
Universal | 📦 Mirror in repository | Local Git asset in apk/ directory |
- Download the APK:
Python-IDE-1.1.apk. - Open the downloaded file from your notification shade or Files/Downloads app.
- If Android prompts a security dialog, enable "Allow from this source" for your browser or file manager.
- Tap Install and launch Python IDE from your app drawer.
Optimizes screen space for mobile productivity:
- 📝 Tab 1: Editor
- Line numbers, dynamic syntax highlighting (
PythonSyntaxHighlighter), and quick-access toolbar. Tabkey for standard 4-space indentation and one-tap Python tokens (def,class,import,print,:,(),[],{}).- Unsaved changes indicator (
●), font size scaling.
- Line numbers, dynamic syntax highlighting (
- 💻 Tab 2: Terminal
- Live unbuffered streaming of
stdoutandstderr. - ANSI color rendering (
AnsiParser), execution timer in milliseconds (elapsedMs), autoscroll toggle, copy and clear. - Emergency Stop button executing
KeyboardInterrupt. Auto-switches to terminal on Run ▶.
- Live unbuffered streaming of
- 🌐 Tab 3: Web / Visual View
- Automatic rendering of Matplotlib 2D/3D figures without an X11/desktop server.
- Interactive WebView for generated HTML/SVG dashboards or embedded web servers (
http://localhost:8080).
Full, preconfigured Python 3.10 environment including:
| Library | Version | Purpose |
|---|---|---|
numpy |
1.26.2 | Fast vector and matrix math, linear algebra |
matplotlib |
3.6.0 | 2D/3D plotting (rendered in Visual View) |
pillow |
11.0.0 | Image processing and manipulation |
pysolarmanv5 |
3.0.6 | Modbus RTU/TCP telemetry for hardware/solar inverters |
uModbus |
1.0.4 | Modbus protocol implementation |
pyserial |
3.5 | Serial communication |
| Standard Library | 3.10 | socket, threading, http.server, json, math, struct, urllib, ctypes, etc. |
| Layer | Technology | Role |
|---|---|---|
| UI & Presentation | Jetpack Compose (Material 3) | Reactive UI with StateFlow in MainViewModel |
| Interpreter Core | Chaquopy (Python 3.10) | Native in-process Python runtime for Android |
| Output Interceptor | runner_hook.py |
Streams sys.stdout & sys.stderr in real time to Compose |
| Visual Bridge | Base64 Image & WebView | Intercepts Matplotlib figures & renders local web servers |
| Permissions | INTERNET, ACCESS_NETWORK_STATE |
Allows network sockets (IoT, APIs, embedded servers) |
Licensed under the MIT License.
Tip
Du musst die App nicht selbst kompilieren. Die installierbare Android-Version steht als Release bereit:
📥 Direkter APK-Download: Python-IDE-1.1.apk (ca. 81 MB, v1.1)
🏷️ Alle Versionen & Changelogs: GitHub Releases
Eine vollwertige, native Android Python-Entwicklungsumgebung (IDE) und Python-Interpreter.
Mit der integrierten Chaquopy Python 3.10 Engine führt die App Python-Code nativ und offline direkt auf dem Android-Gerät aus – ganz ohne Cloud-Abhängigkeiten oder Server. Unterstützt werden numerische Berechnungen mit NumPy, Datenvisualisierung mit Matplotlib, Multithreading, Socket-Netzwerkkommunikation, IoT-Anwendungen sowie interaktive WebViews.
- 🚀 Echtes „Zero Setup“: Kein Linux-Terminal, kein fehleranfälliges
pip installund keine Build-Probleme auf dem Smartphone. C- und Mathe-Bibliotheken (wie NumPy und Matplotlib) sind bereits vorkompiliert, getestet und sofort startklar. - 📱 Touch-optimierte Entwicklung: Große Schaltflächen (Run ▶, Stop ⏹, Save 💾), Schnellzugriff auf oft benötigte Programmiersymbole (
Tab,:,(),[],def,class,try,while,with) und ein seitlicher Datei-Explorer machen das Coden auf dem Smartphone komfortabel. - 🖥️ Clevere 3-Tab-Architektur: Klare Aufteilung in Vollbild-Editor, ANSI-Streaming-Terminal und visuelle Web-/Plot-Ausgabe – alles lässt sich mit einer Wischgeste oder einem Fingertipp erreichen.
- 📊 Nahtlose Visualisierung ohne Desktop: Ruft dein Skript
plt.show()auf, fängt die IDE das automatisch ab und rendert Grafiken hochauflösend. Lokale HTML/JS-Dashboards und HTTP-Server werden direkt im integrierten WebView interaktiv dargestellt. - 🛑 Zuverlässiger Notaus-Schalter (Stop): Endlosschleifen oder blockierende Netzwerk-Sockets können per Knopfdruck sauber via
KeyboardInterruptabgebrochen werden – ohne dass Android einfriert („App reagiert nicht“). - 📶 Voller Zugriff auf das lokale Heimnetzwerk: Im Gegensatz zu Cloud-Notebooks hat das Smartphone im WLAN direkten Socket-Zugriff auf lokale IP-Adressen (z. B. Smart-Home-Geräte, Mikrocontroller, Sensoren oder Router).
- 🔒 100 % Offline & Privatsphäre: Läuft komplett autark auf dem Gerät – keine Cloud, keine Serverkosten, kein Datenabfluss und keine Abhängigkeit von einer Internetverbindung.
- 🛠️ Maximale Flexibilität: Anpassungen, neue Berechnungen oder zusätzliche Schnittstellen können direkt auf dem Gerät im Code geändert und sekundenschnell getestet werden – ohne eine ganze Android-App neu kompilieren zu müssen.
| Release | Dateiname | Zielsysteme | Download-Link | Hinweise |
|---|---|---|---|---|
| v1.1 (Neueste) | Python-IDE-1.1.apk |
Android 7.0+ (arm64-v8a, x86_64) |
👉 APK v1.1 herunterladen | Erweiterte Editor-Snippets (try, while, with, self.), Versions-Footer, CI-Builds |
| v1.0 | Python-IDE-1.0.apk |
Android 7.0+ (arm64-v8a, x86_64) |
📦 v1.0 herunterladen | Initial Release mit NumPy, Matplotlib & Modbus |
| Repo Mirror | Python-IDE-1.1.apk |
Universell | 📦 Aus Repository laden | Lokales Git-Asset im apk/-Verzeichnis |
- Lade die APK über den Link oben herunter:
Python-IDE-1.1.apk. - Öffne die heruntergeladene Datei (über die Statusleiste oder deinen Dateimanager wie z. B. Files oder Downloads).
- Falls Android eine Sicherheitsabfrage anzeigt:
- Tippe auf Einstellungen und aktiviere den Schalter „Installation aus dieser Quelle zulassen“ (für deinen Browser oder Dateimanager).
- Bestätige die Installation mit Installieren.
- Starte die App Python IDE direkt aus deiner App-Übersicht.
Jede Hauptansicht nutzt die volle Bildschirmhöhe und -breite optimal aus:
-
📝 Tab 1: Editor
- Vollbild-Code-Editor mit Zeilennummern und dynamischem Syntax-Highlighting (
PythonSyntaxHighlighter). - Quick-Access-Symbolleiste für schnelles Programmieren auf Touchscreens:
Tab-Taste für standardmäßige 4-Leerzeichen-Einrückung.- Schnelleingaben für häufige Python-Tokens (
def,class,import,print,:,(),[],{}).
- Statusanzeige für ungespeicherte Änderungen (
●). - Zoom & Schriftgrößenanpassung.
- Vollbild-Code-Editor mit Zeilennummern und dynamischem Syntax-Highlighting (
-
💻 Tab 2: Terminal
- Vollbild-Streaming-Konsole für
stdoutundstderrin Echtzeit. - Automatische ANSI-Farbdarstellung via
AnsiParser(z. B. farbige Status- oder Fehlerausgaben). - Ausführungszeit-Messung in Millisekunden (
elapsedMs). - Autoscroll-Schalter, Copy-to-Clipboard und Clear-Funktion.
- Stop-Schalter zur sauberen Unterbrechung laufender Skripte über
KeyboardInterrupt. - Beim Klick auf Run ▶ wechselt die Ansicht automatisch in das Terminal.
- Vollbild-Streaming-Konsole für
-
🌐 Tab 3: Web / Visual View
- Integrierte visuelle Ausgabe für grafische Ergebnisse:
- Matplotlib Plots: Automatisch erfasste Diagramme werden nahtlos hochauflösend gerendert.
- Web-Dashboards: Generierte HTML/CSS/JavaScript-Dateien oder lokale HTTP-Server (z. B.
http://localhost:8080) werden interaktiv im WebView dargestellt.
- Badge-Indikator, sobald neue Visualisierungen verfügbar sind.
- Integrierte visuelle Ausgabe für grafische Ergebnisse:
- Ausgabe-Erkennung: Wenn ein Skript HTML generiert oder Matplotlib-Plots erzeugt, wird dies automatisch abgefangen und bereitgestellt.
- Matplotlib-Hook (
runner_hook.py): Fängtplt.show()im Hintergrund ab, konvertiert Plots in In-Memory Base64-PNGs und leitet sie direkt an die Android-Ansicht weiter – ganz ohne Desktop-Display-Server. - Integrierte Android WebView-Komponente: Stellt interaktive HTML-Inhalte, SVG-Grafiken oder lokale Dashboards dar (unterstützt auch lokale Server auf Ports wie
8080).
Die IDE liefert eine vollständige, vorkonfigurierte Python 3.10 Umgebung mit folgenden nützlichen Paketen aus:
| Paket | Version | Verwendungszweck |
|---|---|---|
numpy |
1.26.2 | Schnelle Vektor- und Matrixberechnungen, lineare Algebra |
matplotlib |
3.6.0 | 2D/3D-Plots (wird automatisch im Visual View gerendert) |
pillow |
11.0.0 | Bildverarbeitung und Bildmanipulation |
pysolarmanv5 |
3.0.6 | Modbus RTU/TCP-Kommunikation für Hardware- und IoT-Geräte |
uModbus |
1.0.4 | Modbus-Protokoll-Implementierung |
pyserial |
3.5 | Serielle Kommunikation |
| Python Standard Library | 3.10 | socket, threading, http.server, json, math, struct, urllib, ctypes, etc. |
- Slide-Out Drawer zur Verwaltung eigener Python-Skripte im App-Workspace:
- Neue Dateien anlegen (
.py,.json,.html,.txt). - Dateien umbenennen, speichern und löschen.
- Reset-Funktion zur Wiederherstellung aller mitgelieferten Musterskripte.
- Neue Dateien anlegen (
Die IDE enthält verschiedene Beispielskripte, die das breite Einsatzspektrum demonstrieren:
-
1_matplotlib_waves.py– Wissenschaftliche Visualisierung- Berechnet Sinus- und Kosinuswellen mit NumPy und formatiert sie im Dark-Theme.
- Der Plot erscheint direkt im Web / Visual View Tab.
-
2_numpy_matrix.py– Numerische Mathematik- Matrix-Multiplikation, Determinanten- und Inversionsberechnungen nativ auf dem Smartphone.
-
3_interactive_html_dashboard.py– Web-Generierung- Erzeugt ein interaktives HTML5/SVG-Dashboard, das direkt im WebView gerendert wird.
-
deye_12k_inverter.py– IoT & Photovoltaik (Real-World Showcase)- Beispiel für hardwarenahe Netzwerkkommunikation via reine Python-Sockets.
- Fragt einen Hybrid-Wechselrichter per Modbus TCP (Port 502) oder WLAN-Stick (Port 8899) im Heimnetzwerk ab.
- Startet einen lokalen HTTP-Server im Hintergrund-Thread und streamt Telemetriedaten live in den Web / Visual View Tab.
Wer die App selbst aus dem Quellcode bauen möchte:
- Android Studio (Koala / Ladybug oder neuer)
- JDK 17
- Android SDK (Min SDK: 24, Target SDK: 36)
- Repository klonen:
git clone https://github.com/juergen874/Python-IDE-Runner.git cd Python-IDE-Runner - Projekt über Gradle bauen:
./gradlew assembleDebug
- APK auf dem Smartphone / Emulator installieren:
adb install -r app/build/outputs/apk/debug/app-debug.apk
| Schicht | Technologie | Beschreibung |
|---|---|---|
| UI & Presentation | Jetpack Compose (Material 3) | Reaktive Zustände via StateFlow im MainViewModel |
| Interpreter Core | Chaquopy (Python 3.10) | Nativer In-Process Python-Interpreter für Android |
| Output Interceptor | runner_hook.py |
Leitet Python sys.stdout & sys.stderr in Echtzeit an Compose weiter |
| Visual Bridge | Base64 Image & WebView | Fängt Matplotlib-Figuren ab und stellt HTML/Webserver dar |
| Berechtigungen | INTERNET, ACCESS_NETWORK_STATE |
Erlaubt Netzwerk-Sockets (z. B. für IoT, APIs oder lokale Webserver) |
Dieses Projekt ist unter der MIT-Lizenz lizenziert.