A modern beauty e-commerce platform featuring dual branding (BEAUTIFY & ALOUORA) with 32+ screens, built with Next.js 14, TypeScript, and Supabase.
- BEAUTIFY - Authentication, Cart, Simple flows with soft pink aesthetics
- ALOUORA - Main shopping experience with elegant, sophisticated design
- π Authentication (Google OAuth + Phone OTP)
- ποΈ Product Catalog & Advanced Filtering
- π Shopping Cart & Checkout
- π³ Payment Integration (Razorpay, Stripe, UPI, Wallets, COD)
- π¦ Order Management & Live Tracking
- β Product Reviews & Ratings
- β€οΈ Wishlist
- π€ User Profile & Address Management
- π° Wallet & Rewards System
- π± Fully Responsive Design
- βΏ Accessible (WCAG 2.1 AA)
- Framework: Next.js 14+ (App Router)
- Language: TypeScript (Strict Mode)
- Styling: TailwindCSS v4 + CSS Modules
- State Management: Zustand + TanStack Query
- Forms: React Hook Form + Zod
- UI Components: Headless UI + Heroicons
- Animations: Framer Motion
- API: Next.js API Routes
- Database: PostgreSQL (via Supabase)
- Auth: Supabase Auth
- Storage: Supabase Storage
- Realtime: Supabase Realtime
- Payments: Razorpay (primary) + Stripe (optional)
- SMS: Twilio / MSG91
- Email: Resend / SendGrid
- Analytics: Google Analytics 4 + Mixpanel
- Monitoring: Sentry
- CDN: Cloudinary (optional)
- Hosting: Vercel
- CI/CD: GitHub Actions
beautify-alouora/
βββ src/
β βββ app/ # Next.js 14 App Router
β β βββ (auth)/ # Auth layout group (BEAUTIFY brand)
β β β βββ signin/
β β β βββ verify-otp/
β β βββ (shop)/ # Main shop layout (ALOUORA brand)
β β β βββ page.tsx # Home page
β β β βββ products/
β β β βββ cart/
β β β βββ checkout/
β β βββ (account)/ # User account pages
β β β βββ profile/
β β β βββ orders/
β β β βββ wishlist/
β β β βββ wallet/
β β βββ api/ # API routes
β β β βββ auth/
β β β βββ products/
β β β βββ cart/
β β β βββ orders/
β β βββ layout.tsx
β β βββ globals.css
β βββ components/
β β βββ ui/ # Base UI components
β β βββ auth/ # Auth components
β β βββ product/ # Product components
β β βββ cart/ # Cart components
β β βββ layout/ # Layout components
β βββ lib/
β β βββ supabase/ # Supabase clients
β β βββ auth/ # Auth helpers
β β βββ api/ # API clients
β β βββ utils.ts # Utility functions
β βββ hooks/ # Custom React hooks
β βββ store/ # Zustand stores
β βββ types/ # TypeScript types
β βββ constants/ # Constants & config
β βββ styles/ # Global styles
βββ public/
β βββ images/
β βββ icons/
βββ .env.example # Environment variables template
βββ .env.local # Local environment (git-ignored)
βββ tsconfig.json # TypeScript configuration
- Node.js: v20.x or higher
- npm/yarn/pnpm: Latest version
- Git: Latest version
- Supabase Account: Sign up here
-
Clone the repository
git clone <repository-url> cd beautify-alouora
-
Install dependencies
npm install # or yarn install # or pnpm install
-
Set up environment variables
cp .env.example .env.local
Then edit
.env.localand fill in your values:- Supabase credentials (get from Supabase dashboard)
- Google OAuth credentials (configure in Supabase Auth)
- SMS provider credentials (Twilio or MSG91)
- Payment gateway keys (Razorpay or Stripe)
- Other API keys as needed
-
Set up Supabase
a. Create a Supabase project at supabase.com
b. Run database migrations:
npx supabase init npx supabase link --project-ref <your-project-ref> npx supabase db push
c. Enable authentication providers in Supabase Dashboard:
- Google OAuth
- Phone authentication
-
Run the development server
npm run dev # or yarn dev # or pnpm dev
-
Open your browser Navigate to http://localhost:3000
Used for: Authentication, Cart, Simple flows
Colors:
- Primary:
#E8A1B4(Soft Pink) - Secondary:
#B8A1D8(Lavender Purple) - Accent:
#F5E6EA(Light Pink) - Background:
#FAF0F3
Usage in code:
<button className="bg-beautify-primary text-white hover:bg-beautify-primary-dark">
Sign In
</button>Used for: Main shopping experience, Product pages
Colors:
- Primary:
#FFC4D6(Soft Pink) - Secondary:
#6B4C9A(Deep Purple) - Accent:
#D4A574(Gold/Warm) - Background:
#FFF9F5
Usage in code:
<button className="bg-alouora-primary text-white hover:bg-alouora-primary-dark">
Add to Cart
</button>- TypeScript: Strict mode enabled, no
anytypes - Naming: camelCase for variables, PascalCase for components
- Imports: Use absolute imports with
@/prefix - Comments: JSDoc for public APIs
- Implementation Plan - Detailed development roadmap
- Full Documentation - Complete specifications
-
Push to GitHub
git remote add origin <your-repo-url> git push -u origin main
-
Connect to Vercel
- Go to vercel.com
- Import your GitHub repository
- Configure environment variables
- Deploy!
This project is proprietary and confidential.
Made with β€οΈ by the Beautify/Alouora Team