Skip to main content

Plash

What is Plash

Plash is a next-generation deployment platform for fast, hassle-free Python application hosting. It’s designed to be:

  • Simple and streamlined - deploy your applications with minimal configuration
  • Developer-focused - built for coders, not cloud engineers
  • Fast and efficient - get your app online in seconds, not days

Plash handles all the deployment complexities so you can focus on what matters: building great applications. With Plash, you can deploy any Python app using straightforward commands and configurations, letting you ship your work quickly and reliably.

Whether you’re building web services, APIs, data applications, or tools, Plash provides the infrastructure backbone so you can concentrate on creating a splash with your code.

Tutorial: deploy your first app

In this tutorial you will learn how to deploy your first app. This tutorial will explore the basics of using Plash and help you get familiar with it at a high level.

Prerequisites:

  • A registered account at https://pla.sh
  • Basic terminal / command line skills

1. Installation

Install Plash comandline interface (CLI) with pip:

pip install plash-cli

The CLI lets you manage your whole app’s lifecycle

2. CLI Login

Authenticate with your Plash account:

plash-login

This command opens your browser to authenticate with your Plash account. After completing the login process, you’ll see a “complete” confirmation page in your browser.

Return to your terminal where you’ll find the confirmation message:

Authentication successful! Config saved to /plash_config.json

Alternative Authentication Methods

If you’ve already logged in on one machine and want to authenticate on another without opening a browser, you can transfer your authentication token directly. Run plash-login --show on the machine where you’re already logged in to print your current token. You can then copy this and use plash-login --token <your-token> on the new machine to authenticate.

For convenience, you can pipe the token directly to your clipboard. On macOS, use plash-login --show | pbcopy. On Linux with X11, use plash-login --show | xclip -selection clipboard or plash-login --show | xsel --clipboard. On Windows PowerShell, use plash-login --show | Set-Clipboard.

For automated environments like CI/CD pipelines or scripts, you can set the PLASH_TOKEN environment variable instead of storing credentials in a config file. When this variable is set, the CLI will use it automatically without requiring plash-login. For example: export PLASH_TOKEN="your-authentication-token" on Unix-like systems, or $env:PLASH_TOKEN="your-authentication-token" in PowerShell.

3. Create your first app

Create a new directory for your first app:

%%bash
mkdir -p plash-tutorial
cd plash-tutorial

Next, create the main.py file:

%%writefile main.py
from fasthtml.common import *

app, rt = fast_app()

@rt
def index():
    return H1("Hello, world!")

serve()

This is a basic FastHTML app. Plash also supports other popular python frameworks.

And create the requirements.txt file:

%%writefile requirements.txt
python-fasthtml

4. Deploy your app

Now that you’ve created your app files, you’re ready to deploy! From your plash-tutorial directory, run: plash-deploy

This command will:

  1. Package your application files
  2. Upload them to Plash’s servers
  3. Build and deploy your application
%%bash
plash-deploy
Initializing deployment...
✅ Upload complete! Your app is currently being built.
It will be live at https://example-app.pla.sh

Note: You’ll see a different url that has been randomly generated for your app.

5. View your app

Your app should be ready a couple of seconds after running the deploy command.

Once your app is ready, you can:

  1. Open the provided URL in your browser, or
  2. Use the convenient plash-view command to open it automatically:
plash-view

When you visit that page you should see “Hello, World!”

🎉 Congratulations! You deployed your first app on Plash!

Where to go from here

Learn more about what Plash has to offer in the rest of the docs at: https://docs.pla.sh

To learn more about creating web apps with FastHTML, we recommend looking at the official docs at: https://fastht.ml/docs/. In particular, we recommend the following:

  1. OAuth - Setup authentication for your Plash App with Google Sign-In or other OAuth Providers.
  2. Stripe - Accept payments for your products hosted on Plash with Stripe.

Would you like to use a different python web framework? Then check out the examples section of the repo, it has examples for many popular python web frameworks like FastAPI, Gradio, and Streamlit.

Metadata

Release files for plash-cli 0.3.15

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for plash-cli 0.3.15
File Size Uploaded Provenance Actions
plash_cli-0.3.15.tar.gz 17.7 kB Without provenance Details for plash_cli-0.3.15.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for plash-cli 0.3.15
File Interpreter ABI Platform Actions
plash_cli-0.3.15-py3-none-any.whl Python 3 none any Details for plash_cli-0.3.15-py3-none-any.whl

Total release size: 34.0 kB

Release files / plash_cli-0.3.15.tar.gz

Download URL plash_cli-0.3.15.tar.gz
Size 17.7 kB
Tags Source
SHA-256 checksum
How to use checksums
1ee13ff69a90c0f60e50f7d9423e9eebb819d8836520dfac3d318b33f89bd346
BLAKE2b-256 checksum
How to use checksums
a4bf0d3fd209d8fb31ec75b78c02f0dc877f12b32db8fa22dfcf56fb10175257
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release files / plash_cli-0.3.15-py3-none-any.whl

Download URL plash_cli-0.3.15-py3-none-any.whl
Size 16.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7c36372beece3e84d86747e307af075b3a428ff83d9c85223323caa2be70457f
BLAKE2b-256 checksum
How to use checksums
f92544024b64ff0cdfe982e6a78d684c7dff98739e9ae2715b519d62a55d7b93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Security for plash-cli 0.3.15

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page