원클릭으로
build-deploy
// Build, deploy, and configure the 3D viewer app. Use when: running dev server, building for production, deploying to Vercel, configuring CORS, editing vercel.json routes, managing static assets, or troubleshooting build issues.
// Build, deploy, and configure the 3D viewer app. Use when: running dev server, building for production, deploying to Vercel, configuring CORS, editing vercel.json routes, managing static assets, or troubleshooting build issues.
Drives live avatar movement from the real pump.fun PumpPortal feed.
Inspect and manage creator fees on pump.fun — determine fee destinations (cashback, shared config, or direct creator), collect fees, distribute shared fees to shareholders, and query vault balances. Prefer runnable Node scripts in this skill folder; use @pump-fun/pump-sdk and @pump-fun/pump-swap-sdk for custom integrations.
Create coins on pump.fun — standard create with initial buy. Prefer runnable Node scripts in this skill folder; use @pump-fun/pump-sdk for custom integrations.
Buy and sell tokens on pump.fun bonding curve and pump swap AMM pool, and query SOL/token balances. Prefer runnable Node scripts in this skill folder; use @pump-fun/pump-sdk and @pump-fun/pump-swap-sdk for custom integrations.
Full project workflow for the three.ws platform. Use when: developing features, debugging, modifying UI, understanding architecture, running dev server, or making code changes anywhere in the repo (viewer, agent runtime, API, contracts).
Add or modify Three.js 3D features in the viewer. Use when: adding rendering features, new GUI controls, camera behavior, loaders, post-processing, environment maps, animation features, display toggles, materials, or extending the Viewer class.
| name | build-deploy |
| description | Build, deploy, and configure the 3D viewer app. Use when: running dev server, building for production, deploying to Vercel, configuring CORS, editing vercel.json routes, managing static assets, or troubleshooting build issues. |
| argument-hint | Describe the build or deploy task |
public/| Command | Purpose |
|---|---|
npm install | Install dependencies |
npm run dev | Vite dev server on port 3000 |
npm run build | Production build → dist/ |
npm run clean | Remove dist/ contents |
npm run deploy | Build + vercel --prod with local config |
npm version <patch|minor|major> | Bump version, auto-pushes via postversion |
Config: vite.config.js
TARGET env var:
TARGET=app (default) → multi-page app in dist/ (entries: index.html, features.html, embed.html, agent-home.html, agent-embed.html)TARGET=lib → self-contained <agent-3d> web component in dist-lib/ (ESM + UMD, three.js bundled)jsxFactory: 'vhtml', jsxFragment: '"div"'vercel-rewrites middleware that mirrors Vercel routing for /login, /register, /dashboard, /studio, /widgets, /docs/widgets, /agent, /agent/:id, /agent/:id/embedvite-plugin-pwa emits the service worker + manifestpublic/ folder copied to build outputConfig: vercel.json
Key routes:
/assets/* — Cached 1 week (max-age=604800)/.well-known/* — Cached 1 day, serves from public/.well-known//robots.txt, /sitemap.xml — Served from public//avatars/* — Served from public/avatars/Domain: three.ws
Config: cors.json
Allowed origins:
https://three.ws/ and subdomainshttp://localhost:* / https://localhost:*public/
├── avatars/ → Default 3D model files (GLB)
├── .well-known/ → Domain verification files
├── robots.txt → Search engine directives
└── sitemap.xml → Site map
npm installnpm run devhttp://localhost:3000npm run build — verify no build errorsnpm run deploy — builds and deploys to Vercelpublic/ (copied as-is to build output)vercel.jsoncors.jsonpackage.json dev script portthree version in package.json matches CDN paths in viewer.jscors.json for allowed originsvercel.json