The database for the vibe coding era.

Database schemas, SQL, ORMs — vestigial tech that slows you down.

PsychoDB is one service: server, CDN, and data storage. Everything is stored. Everything is a URL.

You made something cool in Claude artifacts, Lovable, or Cursor. It demos great. But it's a toy — no logins, no saved data, no real users.

PsychoDB turns your artifact into a real app. Storage, logins, and hosting — all behind URLs your AI already knows how to use.

FIG 01 STATE.DIAGNOSTIC

Your vibe is dead.

You just built something amazing in 20 minutes with Claude. Now you need a database.

Supabase wants you to create an account, set up a project, configure row-level security, learn their SDK, and write SQL migrations. Firebase wants a Google account, a console project, npm install, initializeApp, and a 47-line security rules file.

What if your database was just a URL?

# Store data
curl -X PUT https://psychodb.com/YOUR_KEY/kv/posts/hello \
  -d '{"title": "Hello world", "body": "First post"}'

That's stored. Forever. Now serve it:


<img src="https://psychodb.com/YOUR_KEY/kv/assets/photo.jpg">
— Wait, that's it? That's it.

Your vibe is dead.

Your Claude artifact is beautiful. Your Lovable project demos perfectly. Then someone asks "can I actually use this?" — and you realize: no logins, no saved data, no link that survives a refresh.

The path to "real app" is a tax. Create a Supabase project. Set up OAuth in Google Cloud Console. Configure the consent screen. Paste redirect URIs. Copy env vars. Debug CORS. An hour later, still no users.

With PsychoDB, you just tell your AI:

You type into your AI:
"Add login with PsychoDB"
→ Users sign in with Google. No Cloud Console.
You type into your AI:
"Save each user's data to PsychoDB"
→ Their stuff persists, scoped to them.
You type into your AI:
"Deploy this to PsychoDB"
→ Live URL. Share it.
— Wait, that's it? That's it.

Ship before your coffee gets cold.

Don't think about the database. Think about what you're going to build in the next 10 minutes.

T+01:00

Store some data.

fetch('https://psychodb.com/YOUR_KEY/kv/posts/hello', {
  method: 'PUT',
  body: JSON.stringify({ title: 'Hello world', body: 'First post' })
});
T+03:00

Serve a full page.

Visit URL — it's live.

fetch('https://psychodb.com/YOUR_KEY/kv/site/index.html', {
  method: 'PUT',
  body: `
    <h1>My App</h1>
    <script src="https://psychodb.com/YOUR_KEY/kv/site/app.js"></script>
  `
});
T+05:00

Upload assets.

Images, CSS, fonts. Same pattern.

fetch('https://psychodb.com/YOUR_KEY/kv/assets/logo.png', {
  method: 'PUT', body: pngBlob
});
fetch('https://psychodb.com/YOUR_KEY/kv/assets/style.css', {
  method: 'PUT',
  body: 'body { font-family: Inter; background: #0a0a0a; color: #fff; }'
});
T+08:00

List & Query.

const res = await fetch('https://psychodb.com/YOUR_KEY/kv/posts/?prefix=2026-&limit=20');
const { items } = await res.json();
T+10:00

Deployment Complete.

You have a full-stack app. Persistent storage. Live URL. No config. No deploy step. You never left your editor. You just built a full-stack app without configuring anything.

Don't think about the database. Think about what you're going to build in the next 10 minutes.

T+01:00

Add login.

You type into your AI:
"Add login with PsychoDB"
→ Users sign in with Google. No OAuth setup.
T+03:00

Save user data.

You type into your AI:
"Save this user's data to PsychoDB"
→ Per-user storage. Persists across sessions.
T+05:00

Deploy the app.

You type into your AI:
"Put my app on PsychoDB so I can share the link"
→ Live URL. Send it to anyone.
T+08:00

Make it multiplayer.

You type into your AI:
"Show a feed of everyone's posts"
→ Shared data. A real multi-user app.
T+10:00

Real app.

Your artifact is a real app. Users can sign in. Their data persists. It lives at a shareable URL. No Supabase project. No Google Cloud Console. No Vercel deploy. You never left your editor.

One service for everything.

Other stacks make you glue together five services before you write a single line of product code. S3 for assets. Postgres for data. Vercel for hosting. Cloudflare for CDN. Stripe for "why is my AWS bill $47 for a side project." PsychoDB is one service. One URL pattern. One bill.

FIG 02 FEAT.STORAGE

Store anything

JSON, HTML, images, CSS, JavaScript, fonts, videos, PDFs, WebAssembly — it's all just keys and values. PUT it in, GET it out. Content-Type is automatic.

PUT /.../assets/logo.png
→ image/png

PUT /.../site/index.html
→ text/html

PUT /.../data/users.json
→ application/json

PUT /.../fonts/inter.woff2
→ font/woff2
FIG 03 FEAT.ROUTING

Everything is a URL

Every stored asset is directly linkable. Use it anywhere or paste it in your browser. No SDK required. No auth headers. No tokens.

<img src="https://.../hero.jpg">

<script src="https://.../app.js"></script>

<link rel="stylesheet" href="https://.../style.css">
FIG 04 FEAT.SERVE

Server + CDN + DB

Your HTML pages are served by PsychoDB. Your images are served by PsychoDB. Your data is served by PsychoDB. One service to power your entire app.

  • HTML Delivery NATIVE
  • Asset CDN GLOBAL
  • Data Store PERSISTENT

To make your AI-built app real, you'd normally bolt on: Supabase for data, Google Cloud Console for OAuth, Vercel for hosting, maybe Clerk for sessions. Each with its own dashboard, env vars, and gotchas. Your AI writes the glue, you debug the configs. PsychoDB replaces all of it. Storage, logins, and hosting in one service. One URL pattern. Zero consoles.

FIG 02 FEAT.AUTH

Real logins

Users sign in with Google. No OAuth consent screen. No redirect URI debugging. No Cloud Console project.

"Add login with PsychoDB"
→ Google sign-in. Done.
FIG 03 FEAT.STORAGE

Saved user data

Per-user storage, namespaced automatically. Your AI writes one line; their data persists across sessions.

"Save this user's notes to PsychoDB"
→ Persisted. Scoped to them.
FIG 04 FEAT.SERVE

Shareable app

Your app is live at a URL the moment your AI deploys it. No Vercel, no build step, no redeploy.

  • Google Login BUILT-IN
  • User Data PER-USER
  • Hosting INSTANT

Live Environments.

These are real apps. Live right now. Click them. Every app is an HTML file stored in PsychoDB, served from PsychoDB, reading and writing data to PsychoDB.

Tiny Twitter — CRT terminal UI with feed, compose box, and trending hashtags
APP_01 — FEATURED LIVE →

Tiny Twitter

A CRT-terminal social app. Google sign-in, posts, likes, follows, hashtags, and full-text search — every byte stored in PsychoDB.

  • AUTHGOOGLE_OAUTH
  • STORAGEPSYCHODB_KV
  • HOSTINGPSYCHODB_KV
  • SEARCHMEILISEARCH
Click anywhere to open →

Unit Economics Matrix.

The Free Tier Philosophy

Build and ship for free. Free apps get a small, tasteful Built with PsychoDB badge — injected at response time when HTML is viewed in a browser. Your stored data is never modified.

The badge is automatic. Upgrading removes it instantly — no re-upload, no code change, no redeploy. Every free app is a live billboard for PsychoDB. We're fine with that.

FIG 05 UNIT.CORE

Free

$0 / MO

Unlimited development capabilities. Powered by attribution.

  • Reads UNLIMITED
  • Keys UNLIMITED
  • Total Storage 50MB
  • Badge on HTML YES
FIG 06 UNIT.SCALE

Pro

$10 / MO

The upsell is the badge. No feature walls. No rate limit traps.

  • Everything in Free INCLUDED
  • Badge on HTML REMOVED
  • Support PRIORITY
  • Custom Domain SOON
FIG 07 UNIT.DEDICATED

Dedicated

CONTACT US

Your own PsychoDB on dedicated hardware. For teams that need guarantees.

  • Everything in Pro INCLUDED
  • Storage UNLIMITED
  • Hardware DEDICATED
  • SLA 99.99%
Contact us →
FIG 08 ARCH.SPEED

Microseconds, not seconds.

Bare metal on dedicated hardware. No webservers, no containers, no Lambda cold-starting in someone else's cloud. Straight C and Lua reading directly from memory.

Your GET request doesn't spin up a container. It hits memory and returns. Microseconds, not milliseconds.

FIG 08 ARCH.SPEED

Your app loads instantly.

We run on dedicated hardware, not shared cloud. Your users won't wait.

No cold starts, no spinning up containers. Your pages and data load in microseconds.

FIG 10 DEPENDENCIES.NULL
ACCOUNT_CREATION 12_STEP_QUICKSTART SQL_QUERIES SCHEMA_DEFS MIGRATION_SCRIPTS ORM_LIBRARIES S3_BUCKET_POLICIES ENV_VARIABLES INITIALIZE_APP() CREATE_CLIENT() YAML_CONFIGS DOCKER_IMAGES
Just URLs.
FIG 10 DEPENDENCIES.NULL
GOOGLE_CLOUD_CONSOLE OAUTH_CONSENT_SCREEN REDIRECT_URIS SUPABASE_PROJECT_SETUP RLS_POLICIES ENV_VARIABLES NEXTAUTH_CONFIG CLERK_INSTALL VERCEL_DEPLOY CORS_HEADERS SESSION_COOKIES API_KEY_ROTATION
Just URLs.
EXECUTE_INIT

Your app is live the moment you write your first PUT.

curl -X PUT https://psychodb.com/YOUR_KEY/kv/site/index.html \
  -d '<h1>Hello world</h1>'

You just deployed a website.

Start building →
EXECUTE_INIT

Your artifact doesn't have to stay a toy.

Sign in, grab your project key, and paste the AI prompt into Claude, Lovable, or Cursor. Your AI has everything it needs from there.

Get my AI prompt →