---
title: ArtFloe docs
description: Restyle a photo in the look of a painting while keeping people looking like themselves.
url: https://artfloe-docs.thally.app/
---

# ArtFloe docs

Restyle a photo in the look of a painting while keeping people looking like themselves.

#### [Quick start](/quickstart)

    Restyle a photo on artfloe.fun in a few minutes.

#### [Generate via HTTP](/guides/generate-via-http)

    Upload a photo, call POST /predict, and read the SSE result.

#### [HTTP API](/reference/http-api)

    Every route the studio uses: params, responses, auth.

#### [Error codes](/reference/errors)

    Status codes and error strings the server actually returns.

#### [How generation works](/concepts/generation)

    Fast style, AdaIN, VGG19 + L-BFGS, and person preservation.

#### [Architecture](/concepts/architecture)

    Flask, Modal GPU, volume storage, Supabase, and billing.

## What this site covers

These pages document the live ArtFloe app at [artfloe.fun](https://artfloe.fun) and the HTTP API that studio uses. The app repo is [ArtFlow-CloudFlare](https://github.com/Sohan-spec/ArtFlow-CloudFlare). This `artfloe/` folder is the docs site only.

## Terminology

| Term | Meaning |
|------|---------|
| **Catalog style** | A built-in look from `data/style-catalog.json`, served as a file under `/data/style-images/`. |
| **Custom style** | A style you upload. Stored in Supabase Storage bucket `style-uploads` and named `custom_<uuid>.<ext>` for `/predict`. |
| **Generation** | One `POST /predict` run. Counts against monthly quota. |
| **Person preservation** | Faster R-CNN person boxes + RMBG-2.0 mask, then a composite that keeps people photoreal. Default on. |
| **Subject blend** | Browser mix between the fully preserved layer and a lightly stylized person layer. Not a `/predict` field. |
| **Quota** | Monthly generation count: Free 5, Pro 50, Max 150. Not a credit wallet. |
| **Gateway** | Razorpay (public Indian IP) or Dodo (everywhere else). Locked after first paid checkout. |

## Not shipped

Do not treat these as live features: Stripe, Clerk, SAM 3 / arbitrary-object preserve, Real-ESRGAN `/upscale`, credit wallets, or `GET /predict`.