Submit an App

Fill out the form below. IT reviews each submission manually and provisions the app on approval — plan on 2 to 3 business days.

Re-submitting? Your original details have been pre-filled below. Feel free to update anything before submitting again.
🎉
Submission received!
Your app has been submitted for review. You'll get an email once it's approved.

← Back to App Hub
1
About your app
Name it, describe what it does, and pick a department.
Loading…
Not you?
apps.publicstorage.ai/
At least 20 characters. This shows on your app's catalog card.
2
Your code
Pick your app type, drop your zip, and set any runtime environment variables.
Python
Flask / FastAPI
React / Vue / Svelte
Compiled JS
Static HTML
No build step
Node.js
Express / Next.js
PHP
PHP-FPM + nginx
Docker
Custom Dockerfile
Drop your .zip file here or click to browse
Max 100 MB · App files at the zip root (not nested in a folder)
Uploading…
Your app gets App Storage
Every AppHub app comes with private storage at /data for SQLite, JSON, or uploaded files. Anything written there survives every redeploy. After approval you can browse, download, and manage your files from My Apps → App Storage.
# Python
import os, sqlite3
DB = os.path.join(os.environ["APPHUB_DATA_DIR"], "app.db")
conn = sqlite3.connect(DB)

# Node
const fs = require("fs");
fs.writeFileSync(`${process.env.APPHUB_DATA_DIR}/state.json`, JSON.stringify(data));
Set environment variables (optional)
One KEY=value pair per line. IT reviews these before deployment. Do not include production secrets yet.
3
Access & appearance
Who can see this app, plus an icon and screenshots for the dashboard.
Private
Only you and IT admins can see this app.
Group
Members of the chosen Department can see it.
To make this app visible to everyone in Public Storage, ask an IT admin to promote it to Public after approval.
Square PNG/JPG, max 2 MB
Up to 5 · PNG, JPG, WEBP · Max 5 MB each
0 / 5
Plan on 2 to 3 business days. IT reviews each submission manually and provisions the app's infrastructure on approval. You'll get an email the moment it's live.