One file of code is enough
No GitHub, no server, no payment integration. Upload a single HTML file made with ChatGPT or Claude, a folder or a ZIP — we add the web address, sign-in, payments, payouts and receipts.
Publish an appBuild on your PC with VibeForge (same account)
Four ways to publish
Paste code
Paste a single HTML file an AI made for you and preview it — saving included — before you publish.
Files, folder or ZIP
Drop a Lovable, Bolt or Cursor export and you are done.
Start from a kit
Pick a finished app — booking, survey, budget — and make it yours.
VibeForge (optional)
Have a repo or want tests? Build and verify on your own PC, then publish.
Saving and sharing in one line
The store lists apps that keep data or are used together. The SDK below does it with no server.
<script src="/_sdk.js"></script>
<script type="module"> // type="module" lets you use await at the top level
const items = await appdisk.db.items.list(); // list (mine)
const all = await appdisk.db.board.list({ scope: 'all' }); // everyone’s
const it = await appdisk.db.items.add({ text: '…' }); // add
await appdisk.db.items.update(it.id, { done: true }); // update
await appdisk.db.items.remove(it.id); // delete
await appdisk.db.board.add({ text: '…' }, { scope: 'all' }); // everyone can read
const me = await appdisk.me(); // signed in?
if (!me.signedIn) appdisk.signIn();
</script>Collection naming
- By default data is visible only to its writer. To share it, write and read with {scope:'all'} (everyone reads, people edit only their own).
- Starting with own_ — only the app owner writes (notices, blog).
- Starting with one_ — one entry per person (polls, surveys).
- Fields starting with $ — only the owner changes them (e.g. $status to confirm a booking).
Tell your AI this
Paste it into ChatGPT, Claude or Cursor and it turns your code into something the store accepts.
Update this app so it can be published on the AppRun store.
1) Put <script src="/_sdk.js"></script> inside <head>, and write your code inside <script type="module"> (needed to use await at the top level).
2) Use AppRun storage instead of localStorage: list await appdisk.db.items.list(), add await appdisk.db.items.add({...}), edit await appdisk.db.items.update(id, {...}), delete await appdisk.db.items.remove(id). (rename items as you like) By default only the writer sees their data.
3) For data everyone sees (boards, guestbooks, poll results) write with add(data, {scope:'all'}) and read with list({scope:'all'}). For notices only the owner writes, start the collection name with own_; for one entry per person (polls, surveys) start it with one_.
4) Check sign-in with (await appdisk.me()).signedIn and sign in with appdisk.signIn().
5) Don’t put API keys in the code. Return a single index.html.Earnings and payouts
- 15% platform fee — no ads, listing or monthly fees
- 3.3% payment fee (cards, wallets, PayPal)
- 3.3% tax withheld for individuals in Korea (businesses invoice)
- Monthly statements, paid on the 10th · PayPal outside Korea
- Affiliates: promote other developers’ apps and share the revenue
Kits you can try now
Landing page + waitlist
A one-page product pitch with a waitlist form. Only you see the sign-ups, with CSV export.
Link in bio
Your intro, a stack of link buttons and an inbox for visitor messages. Made for social profiles.
Portfolio + project requests
Project cards and a request form. Change each request’s status (reviewing, in progress, done) from your own view.
Blog & announcements
A blog where only you post and anyone reads. Signed-in visitors comment, and you can remove comments.
Guestbook & board
Anyone reads, signed-in people write. Edit or delete your own posts; the owner can remove any post.
Booking requests
People pick a date and time slot to request a booking; you confirm or decline. Requesters see their own status.
Survey
Write your questions in the config file and it becomes a survey. One response per person; only you see the totals and CSV.
Poll
One question, several options. One vote per signed-in person, with live result bars. Votes can be changed.
Expense tracker
Log income and spending, see monthly totals and category shares. Private, with CSV export.
AI features (optional)
Summarize, translate and chat via /_ai/… with no API key. Users pay in credits after a daily free allowance.
/_ai/chat 2 · /_ai/summarize 2 · /_ai/translate 2 · /_ai/embed 1 · /_ai/transcribe 5
FAQ
What does review check?
That the app really does something (saving, sharing, scheduled runs, records, notifications) and has no hidden outbound requests, exposed keys or personal-data collection. Apps that only wrap a chatbot are not listed.
Do I need GitHub?
No. Paste, files, ZIP and kits all work without GitHub. If you have a repo you can connect it through VibeForge.
How do I make changes?
Edit in the web editor on your creator page, preview, then deploy. You can invite co-editors too.