Platform Overview
What Phemeral is and how its core concepts fit together.
Phemeral is a deployment platform for Python backends. It takes your source code, automatically detects your framework and dependencies, builds your application, and runs it on a lightweight virtual machine with a public URL.
How Phemeral Works
When you push code to a connected GitHub repository, Phemeral:
- Downloads the source code from your repository.
- Analyzes the project to detect the Python framework (FastAPI, Flask, or Django), package manager (uv, poetry, or pip), and application entry point.
- Builds your project
- Deploys the built project to the Phemeral cloud
- Assigns a public URL on
.phemeral.appand serves traffic to your application.
Core Concepts
Phemeral is organized around three main concepts:
- Projects — A project groups related environments together, connects to a single GitHub repository, and can define a project-level start command for new deployments.
- Environments — An environment is a deployment target within a project (e.g. production, staging). Each environment has its own configuration, environment variables, and custom domains.
- Deployments — A deployment is a specific version of your code running in an environment. Environments track a current deployment that receives live traffic.
How They Relate
Organization
└── Project (connected to a GitHub repository)
├── Environment: "Production" (branch: main)
│ ├── Current Deployment → receives traffic
│ └── Previous Deployments (history)
├── Environment: "Staging" (branch: pre-release)
│ ├── Current Deployment → receives traffic
│ └── Previous Deployments (history)
└── Environment: "Development" (branch: fancy-feature-branch)
├── Current Deployment → receives traffic
└── Previous Deployments (history)An organization is the top-level container. It holds your team members, billing plan, and projects. When you create an account, an organization is created for you with a default project called Launchpad and three default environments: Production, Staging, and Development.
Supported Stack
Phemeral currently supports Python backends using:
| Category | Supported Options |
|---|---|
| Frameworks | FastAPI, Flask, Django |
| Package managers | uv, poetry, pip (requirements.txt), or any pyproject.toml based package manager |
| Python versions | Specified via .python-version file (defaults to 3.12 if unspecified) |
See Supported Frameworks for details on how autodetection works.