SculptForge
ZBrush-style sculpting for VFX, animation and games. VFX Reference Platform CY2026 and CY2027 builds, OpenUSD, a Python API and Send to Unreal. Free built-in AI: describe a brush and get it, or turn a
Create store-ready App Store and Google Play screenshots in minutes — device frames, templates, gradients and pixel-exact PNG exports, in your browser.
DesignJavaScript · CSSGitHub @umero882OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
AppShots — App Store & Google Play screenshots in minutes
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
AppShots — App Store & Google Play Screenshot Generator
A full-stack-ready clone of an app-store screenshot tool (inspired by appscreens.com),
built with React 18 + Vite + TailwindCSS. Turn raw app captures into polished,
store-ready screenshots with device frames, gradient backgrounds, headlines, and
PNG export — all in the browser.
This is an original, "inspired-by" build. All copy, UI, and device frames are
drawn from scratch (no assets copied from the original site).Read the full README ↗A full-stack-ready clone of an app-store screenshot tool (inspired by appscreens.com), built with React 18 + Vite + TailwindCSS. Turn raw app captures into polished, store-ready screenshots with device frames, gradient backgrounds, headlines, and PNG export — all in the browser.
This is an original, "inspired-by" build. All copy, UI, and device frames are drawn from scratch (no assets copied from the original site).
/inspiration) — public, browsable showcase of complete designs; start a project from any one./tracker) — look up any competitor's live App Store screenshots + metadata (rating, genre, price, version) via Apple's official iTunes Search API; screenshots link back to the App Store for reference..zip, "All sizes" (render one design across every required App Store + Google Play size), copy-to-clipboard, and an animated video reelRequires Node.js 20+.
npm install
npm run dev # http://localhost:5173
Build for production:
npm run build
npm run preview
If you see a partial
node_modulesfrom a previous attempt, just runnpm installagain (or delete the folder first) — it will reconcile.
The app talks to a single backend abstraction (src/lib/backend.js). Out of the
box it uses a localStorage implementation, so everything (accounts, projects,
plan upgrades) works with zero setup.
When you're ready for a real backend, the abstraction is designed to swap to Supabase without touching any UI code.
npm i @supabase/supabase-js.env.example → .env.local and fill in:
VITE_SUPABASE_URL=...
VITE_SUPABASE_ANON_KEY=...
projects table:
create table projects (
id uuid primary key default gen_random_uuid(),
user_id uuid references auth.users not null,
name text not null default 'Untitled project',
state jsonb not null,
created_at timestamptz default now(),
updated_at timestamptz default now()
);
alter table projects enable row level security;
create policy "own projects" on projects
for all using (auth.uid() = user_id) with check (auth.uid() = user_id);
src/lib/backend.js, implement the same method surface
(signUp, signIn, signOut, getCurrentUser, listProjects,
getProject, createProject, updateProject, deleteProject, upgradePlan)
using supabase.auth and supabase.from("projects"), then export it as backend.The Pricing page currently simulates upgrades. To take real payments with Stripe Checkout (client-only):
VITE_STRIPE_PUBLISHABLE_KEY and VITE_STRIPE_PRICE_PRO to .env.local.Pricing.jsx's choose(), redirect to Checkout instead of calling upgrade():
import { loadStripe } from "@stripe/stripe-js";
const stripe = await loadStripe(import.meta.env.VITE_STRIPE_PUBLISHABLE_KEY);
await stripe.redirectToCheckout({
lineItems: [{ price: import.meta.env.VITE_STRIPE_PRICE_PRO, quantity: 1 }],
mode: "subscription",
successUrl: window.location.origin + "/dashboard",
cancelUrl: window.location.origin + "/pricing",
});
plan to pro.src/
components/ Navbar, Footer, Logo, AuthShell, ScreenCanvas, ProtectedRoute
lib/
backend.js data layer (localStorage now, Supabase-ready)
auth.jsx auth context/provider
devices.js device frame definitions (CSS-drawn, store dimensions)
templates.js gradients, fonts, layouts, default project state
export.js DOM → PNG export at store resolution
team.js team API calls + the "which buttons to render" helpers
teamContext.jsx loads the workspace once, shares it with every screen
pages/ Landing, Pricing, Login, Signup, Dashboard, Editor, Team, JoinTeam, NotFound
App.jsx routes
main.jsx entry
server/
teams.js the roster, the roles, /api/team — server-owned by design
entitlement.js Stripe record + Team seat -> one effective plan
firestoreAdmin.js the only writer of teams/** in Firestore
Deeper docs: TEAM-SETUP.md · STRIPE-SETUP.md · FIREBASE-SETUP.md · DEPLOY.md
React 18 · Vite 8 · React Router 6 · TailwindCSS 3 · Framer Motion · lucide-react · html-to-image · three.js.
The /api/* proxy (server/handlers.js) also holds the AI, image-search, and
App-Store-tracker endpoints; the App Store Tracker uses Apple's public iTunes
Search API and needs no key.
localStorage for convenience only; never do that in production.