Опубликовать сайт, сделанный с ИИ
Your AI tool built the app and it runs on localhost — this is the next step. Put it on the internet with an HTTPS address in about five minutes, then add your own domain, a database or a backend when you need them.
You described an app, an AI tool wrote it, and it works on your computer. To show it to anyone else it has to run on a server that is always on, with an address like https://my-app.skiffly.cloud. That is what "deploying" or "hosting" means. Skiffly does it from the folder you already have: no servers to set up, no Docker to learn.
What you need: the project folder (or a GitHub repository with it) and Node.js 20 or newer on your computer — if your AI tool ran the app locally, you already have it.
The fastest way: let your AI assistant do it#
Copy this into the chat of the tool that built the app (Cursor, Claude Code, Windsurf, Codex, Copilot — anything that can run commands in your project):
Deploy this project to Skiffly and give me the public URL.
1. Run `npx skiffly login` and wait until I confirm the code in the browser.
2. Run `npx skiffly init` to create a project for this folder.
3. Run `npx skiffly up --yes` and wait for the build to finish. If it fails, read the build log, fix the cause and run it again.
4. If the app reads environment variables (API keys, Supabase URL, etc.), set each with
`npx skiffly variables set NAME=value --skip-deploys`, then run `npx skiffly up --yes` again so the site is rebuilt with them.
5. Run `npx skiffly domain` and tell me the https address.The assistant runs the commands, opens your browser once to connect your Skiffly account, and comes back with the address. If you prefer to see each step, do it yourself below — it is the same four commands.
Step by step#
1. Create an account#
Sign up at app.skiffly.dev with Google, GitHub or your e-mail. The Free plan needs no card: one app plus one database, and static sites never go to sleep.
2. Open a terminal in the project folder#
In Cursor or VS Code: Terminal → New Terminal. In Claude Code you are already there. Check you are in the right place — the folder with package.json (or index.html):
ls package.json3. Connect, create a project, upload#
npx skiffly login # opens the browser, confirm the code
npx skiffly init # creates a project for this folder
npx skiffly up --yes # uploads the folder, builds it, shows the log
npx skiffly domain # prints https://<name>-<id>.skiffly.cloudskiffly up detects what you have — Vite, Next.js, Astro, plain HTML, a Node or Python backend — and builds it without any configuration. Open the address it prints: your site is online, with HTTPS.
Every time you change something, run npx skiffly up again.
If the app needs environment variables (API keys, a Supabase URL), set them and rebuild — frameworks like Vite and Next.js bake them into the site during the build:
npx skiffly variables set VITE_API_URL=https://api.example.com --skip-deploys
npx skiffly upProjects that live in an AI builder#
Lovable#
Lovable projects are React + Vite apps, often with Supabase. Connect the project to GitHub in Lovable, then in Skiffly: New project → New service → GitHub repo, pick the repository. Every change Lovable pushes to GitHub is deployed automatically.
If the app uses Supabase, add its variables in the service Variables tab before the first build — Vite bakes them into the site at build time:
VITE_SUPABASE_URL=https://xxxx.supabase.co
VITE_SUPABASE_PUBLISHABLE_KEY=...(Use the exact names from the project's .env or src/integrations/supabase/client.ts.)
Bolt, v0 and other browser builders#
Download the project (Bolt and v0 both let you export the code or push it to GitHub), unzip it, open a terminal in that folder and run the four commands above. With GitHub, connect the repository instead and you get automatic deploys on every push.
Cursor, Claude Code, Windsurf#
The code is already on your computer — use the prompt at the top or the four commands.
Your own domain#
The skiffly.cloud address works right away. To use myname.com, buy the domain at any registrar and add two DNS records — see Buy a domain and connect it.
When it fails#
| What you see | What to do |
|---|---|
npx: command not found | install Node.js (LTS) and open a new terminal |
| the build stops with an error | read the last red lines of the log; most often a missing package (npm install <name>) or a TypeScript error — paste the log into your AI assistant |
| the page is blank | the app needs environment variables (API keys, Supabase URL): set them (npx skiffly variables set NAME=value --skip-deploys or the Variables tab) and run npx skiffly up again to rebuild |
| it works locally on port 3000 but not online | do not hardcode the port; servers must listen on process.env.PORT |
What next#
- A login, a database, a Telegram bot or a background job: they run next to your site in the same project — Next.js + Postgres, Telegram bot.
- Automatic deploys from GitHub on every push: Quick start.
- Let your assistant manage everything through the MCP server.