Stlite: In-browser Streamlit
Run Streamlit apps directly in your browser. No server required. Prototype and share with ease.
Key Features of Stlite
Browser-Native Execution
Run Streamlit apps directly in your browser without any server-side dependencies, enabling instant prototyping and sharing.
Lightning-Fast Development
Leverage Stlite Sharing for rapid prototyping and seamless collaboration. Develop, iterate, and share your data apps with unprecedented speed and ease.
Streamlit Compatibility
Harness the full power of Streamlit's intuitive API in a serverless environment, maintaining consistency with your existing Streamlit workflows.
Effortless Deployment
Deploy your apps with ease, whether through Stlite Sharing, self-hosted web pages, or as desktop applications. No need for server-side Python runtime setup, simplifying the deployment process.
Offline Capability & Privacy
Create apps that work offline as PWAs or desktop applications, ensuring data privacy and enhancing security by keeping sensitive information local.
Versatile Usage
From web applications to desktop software, Stlite adapts to your needs. Perfect for creating interactive data visualizations, prototypes, or full-fledged applications.
Streamlit and Stlite
Stlite is a derivative project that builds upon the excellent foundation laid by Streamlit. While Streamlit is a powerful and versatile framework for creating data applications, Stlite extends its capabilities to cover use cases that Streamlit wasn't originally designed for.
We have deep respect for Streamlit and recognize its strengths in server-based deployments. Stlite complements Streamlit by enabling browser-native execution, allowing developers to run Streamlit apps without a dedicated server. This opens up new possibilities for prototyping, sharing, and deploying Streamlit applications.
By choosing Stlite, you're not moving away from Streamlit, but rather expanding the horizons of what's possible with your Streamlit applications.
Deployment Options
Stlite Sharing
A web platform designed for developing and sharing Streamlit apps powered by Stlite. Perfect for quick prototypes and demonstrations. Generates a sharable URL without sending or storing data on remote servers.
Self-hosted Web Pages
Host your own web pages by importing the Stlite code and executing your Streamlit apps. Works even on static web pages, giving you full control over your deployment. Can be used to create Progressive Web Apps (PWAs) for offline capability and desktop-app-like experience.
Desktop Apps
Package your Streamlit app into a desktop application executable. Ideal for offline use or distribution to users who prefer native applications.
Get Started
Stlite Sharing
To get started with Stlite Sharing:
- Visit the Stlite Sharing platform
- Create a new project
- Write your Streamlit app code
- Click "Run" to see your app in action
- Share the unique URL with others
Stlite Sharing generates a single static HTML file containing your app and its data, ensuring privacy and easy distribution.
How Stlite Works: Under the Hood
The Technology Behind Stlite
Stlite leverages cutting-edge web technologies to bring Streamlit apps directly to your browser or desktop. Here's a visual representation of the technical stack:
Stlite Frontend
The user interface layer that renders Streamlit components and manages user interactions.
WebWorker
Manages the Pyodide runtime and facilitates communication between the Stlite frontend and the Python server.
Stlite Python Server
A customized Streamlit server that runs entirely in the browser, enabling Streamlit apps without a traditional backend.
Pyodide (Wasm CPython)
A WebAssembly-based Python runtime that allows Python code execution directly in the browser or desktop environment.
WebAssembly Runtime
A high-performance execution environment for running compiled code in web browsers, enabling near-native speed.
Web Browser / Desktop App
Stlite runs in modern web browsers or as a desktop application using Electron, providing flexibility in deployment and usage.
Join Our Community
Stlite is an open-source project. We welcome contributions and feedback from the community.