A modern landing page for the ISTWA animated film and waitlist signup, built to scale into a full studio site including an interactive learning platform and future animated titles.
This landing page includes:
- A waitlist signup form
- Project description and mission
- Information about the first film
- Links to social / updates
- Responsive layout and production-ready UI
- React
- TypeScript
- Vite (fast dev server + bundler)
- Tailwind CSS
- PostCSS
- Autoprefixer
- Framer Motion (animations + interactions)
- Lucide React (icons)
- React Icons (additional icons)
- Supabase (waitlist storage + API)
# install dependencies
npm install# start dev server
npm run devnpm run build- Push project to GitHub.
- Go to vercel.com → New Project.
- Import this repository.
- Vercel auto-detects Vite + React.
- Deploy.
Every future git push automatically updates the live site.
root
├── src
│ ├── components # Landing sections + feature components
│ │ ├── Hero.tsx
│ │ ├── About.tsx
│ │ ├── Waitlist.tsx
│ │ └── Footer.tsx
│ ├── components/ui # Reusable UI (buttons, inputs, forms)
│ │ ├── Button.tsx
│ │ └── Input.tsx
│ ├── lib # Supabase client / utils
│ ├── assets # Images, logos, icons
│ ├── hooks # Custom React hooks
│ ├── App.css # App-specific or component-level styles
│ ├── App.tsx # Root entry
│ ├── index.css # Global CSS / Tailwind overrides
│ └── main.tsx # React DOM mount point
├── index.html # HTML template for Vite / React
└── vite.config.ts # Vite config
Note: Additional component pages like
Educators.tsx,FutureVision.tsx,Pricing.tsx, andInteractiveLearning.tsxhave been created for roadmap expansion but are not yet included inApp.tsx.
Create a .env file:
VITE_SUPABASE_URL=your_url
VITE_SUPABASE_ANON_KEY=your_key
- User enters email
- Frontend calls Supabase
- Supabase inserts entry into
waitlisttable - Page confirms signup
- Expand landing page into full ISTWA Studio site
- Add interactive learning platform for history + animation education
- Launch production updates section and film expansions