🚀 Python/JS Data Apps: Build Any Web App on Keboola
Python/JS Data Apps are now available. Pick any framework - Flask, FastAPI, Dash, Express - or combine Python and JavaScript however you like.
Your app runs in Keboola's infrastructure. You bring the code and a small configuration folder; Keboola handles hosting, access control, and data connectivity.
When to use Python/JS vs Streamlit
| Streamlit | Python/JS | |
|---|---|---|
| Best for | Internal dashboards, rapid prototyping | Custom UIs, branded apps, any framework |
| Deployment | Upload code or link a repo | Link a GitHub repo |
| Dependencies | Packages field | pyproject.toml + uv sync |
| Frontend | Streamlit components | Anything |
How it works
Your GitHub repository needs one extra folder — keboola-config — containing three files that tell Keboola how to start your app, which port to serve it on, and which dependencies to install. Everything else is your code.
your-repo/
├── keboola-config/
│ ├── nginx/sites/default.conf ← routes traffic to your app
│ ├── supervisord/services/app.conf ← starts your app
│ └── setup.sh ← installs dependencies
├── pyproject.toml ← Python dependencies
└── app.py ← your application👉 Full setup guide and working examples →
Example repos to get started
- Hello World — minimal working app, copy the structure
- Crypto Price Dashboard (Flask + external API) — fetches live data and renders a table
Authentication
Data Apps now support new authentication options: Basic, OIDC/SSO, GitHub, GitLab, and JumpCloud - configured in the Data App settings, no code changes needed.
Questions? Use the support form in your Keboola project or email support@keboola.com.