Python-native infrastructure for the cloud: LaunchFlow provides a Python SDK that automatically creates and connects to production-ready infrastructure (such as Postgres, Redis, etc..) in your own cloud account. LaunchFlow completely removes the need for DevOps allowing you to focus on your application logic.
Project description
LaunchFlow's Python SDK allows you to create and connect to cloud infrastructure in your own account on GCP, AWS, and Azure.
🤔 What is LaunchFlow?
LaunchFlow enables you to instantly provision cloud resources and deploy your python backend to the cloud of your choice (GCP, AWS, and Azure) all from python code.
⚙️ Installation
pip install launchflow
📖 Examples
GCP Cloud Storage Bucket
- Define a GCS Bucket
import launchflow as lf
bucket = lf.gcp.GCSBucket("my-bucket")
- Create the GCS bucket in your project
launchflow create
- Use the Cloud SQL instance in your application
from infra import bucket
bucket.blob("my-file").upload_from_filename("my-file")
GCP Cloud SQL
- Define a Cloud SQL instance
import launchflow as lf
db = lf.gcp.CloudSQLPostgres("my-pg-db")
- Create the Cloud SQL instance in your project
launchflow create
- Use the Cloud SQL instance in your application
from infra import db
engine = db.sqlalchemy_engine()
FastAPI Integration
Built-in dependencies can easily be injected into your FastAPI application.
from fastapi import FastAPI, Depends
import launchflow
from sqlalchemy import text
db = launchflow.gcp.CloudSQLPostgres("my-pg-db")
engine = db.sqlalchemy_engine()
get_db = launchflow.fastapi.sqlalchemy(engine)
app = FastAPI()
@app.get("/")
def read_root(db: Session = Depends(get_db)):
return db.execute(text("SELECT 1")).scalar_one_or_none()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for launchflow-0.3.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26c4aacae32afac0ca8f69e51976a1c0d93413635faed28ae893818c72f9071b |
|
MD5 | c20827aa923668cdf842ed4bdf03ea52 |
|
BLAKE2b-256 | a9eb1ce557e6d1cf506d5220558bfb094b3472abf315f3cc31530f2a827fb724 |