AI-powered fragrance note generator that creates scent profiles based on your descriptions and reference images.
- Generate fragrance notes using GPT-4.1
- Upload reference images for visual inspiration
- Real-time streaming results
- Responsive design with Tailwind CSS
- Type-safe with TypeScript and Zod
- Frontend: Next.js 15, React 19, Tailwind CSS
- Backend: Convex for data storage
- AI: OpenRouter API with GPT-4.1
- Forms: React Hook Form with Zod validation
- Linting: Biome (Ultracite)
-
Clone the repository:
git clone https://github.com/yourusername/vibescent.git cd vibescent -
Install dependencies:
bun install
-
Set up environment variables:
cp .env.example .env.local
Add your API keys:
OPENROUTER_API_KEY: Your OpenRouter API keyCONVEX_URL: Your Convex deployment URL
-
Set up Convex:
npx convex dev
-
Run the development server:
bun run dev
- Enter a scent description in the prompt field
- Optionally upload a reference image
- Click "Generate Notes" to create your fragrance profile
- View the generated notes with images and links
bun run dev- Start development serverbun run build- Build for productionbun run check- Run Biome linterbun run typecheck- Run TypeScript type checking
Deploy to Vercel with Convex integration:
- Push to GitHub
- Connect to Vercel
- Add environment variables in Vercel dashboard
- Deploy
MIT