Inspiration
My work on Akhdar Perfumes sparked an interest in making fragrance design easier to explore. Perfume Pal turns descriptions such as “warm, smoky oud” into a structured starting point for a perfume-oil blend.
What it does
Users enter a scent style, desired strength, bottle size, mood words, and optional available ingredients. The application is designed to return recipe cards with top/heart/base notes, ingredient percentages, approximate drop counts, and mixing instructions.
The proposed formulations are AI-generated prototype outputs; the project does not establish ingredient safety or professional formulation validation.
How I built it
A lightweight HTML/CSS/JavaScript frontend calls a Python FastAPI backend. The repository documents a two-stage Google ADK/Gemini workflow: a Scent Planner converts preferences into a structured brief, then a Formula Architect generates the recipe output. Docker packages the service for Google Cloud Run. Pydantic models define the API inputs, and JSON parsing connects the generated response to the interface.
My contribution
I developed the project around the fragrance-design workflow, bringing my perfume-brand experience into the product concept, interface, agent prompts, and backend integration. The code and original demo are linked here so visitors can inspect the implementation.
Challenges and learning
The project involved coordinating two distinct generation stages, handling model naming and environment configuration, and parsing structured AI output. Separating preference interpretation from formula generation made the workflow easier to reason about and troubleshoot.
Accomplishments
Perfume Pal was submitted to the Cloud Run Hackathon, and its original screenshots and demo video document the prototype experience. It provides a concrete example of combining a domain-specific idea, a web interface, and an agent-based backend.
Current status
The Cloud Run demo returned a server error during the October 7, 2026 portfolio check. The source code and original gallery remain available; this page does not claim current live service reliability or measured response-time performance.
What's next
Restore the hosted demo, improve output validation and error reporting, and explore an ingredient reference database before expanding recipe history or community features.
Explore
Created by Rami Abdelrazzaq.
Log in or sign up for Devpost to join the conversation.