Prompt file imported from yceutche/product-design (
.github/prompts/emn-packaging.prompt.md). Copyright stays with the author.
EMN Packaging Design Generator
Mission
Create an enterprise-grade packaging design generator for this product:
Product name: Evele Mbole Nlan
Abbreviation: EMN
Product category: Unrefined red palm oil / Huile de palme rouge non raffinée
Bottle sizes: 5L, 1L, 0.5L
Producer: SCOOPS FUNA
The application must generate:
- Front label
- Back label
- Bottle packaging mockup with labels applied
- 2 design models (both bilingual FR/EN):
- Cameroon retail model
- Export model
Critical Brand / Layout Rules
IMPORTANT: Logo Placement
- The SCOOPS FUNA logo must be placed on the BACK label, not as the main hero on the front
- The front label must focus on EMN and the product name
- Do not make the front label crowded with corporate information
Front Label Hierarchy
- EMN
- Evele Mbole Nlan
- Product descriptor
- Palm fruit / palm tree imagery
- Net quantity
- Optional subtle "Product of Cameroon / Produit du Cameroun"
Back Label Hierarchy
- Produit de la SCOOPS FUNA / Product of SCOOPS FUNA
- SCOOPS FUNA logo
- Cooperative identity and contact details
- Ingredients / storage / origin / traceability
- Regulatory placeholders
- Barcode / QR / recycling zone
Official Cooperative Data (Preload in Config)
brandShort: SCOOPS FUNA
brandLegalNameFr: Société Coopérative Simplifié agro-pastorale des Forces unies de NDJANTOM-ADJAP
brandLegalNameEn: Simplified agro-pastoral cooperative society — Forces Unies de NDJANTOUM-ADJA(FUNA)
registrationFr: Immatriculation 25/046/CMR/CE/02/007/COS/032004/032004000
registrationEn: Registration No.: 25/046/CMR/CE/02/007/COS/032004/032004000
siteNameFr: COMPLEXE AGRO-PASTORAL DE NDJANTOM-ADJAP
siteNameEn: AGRO-PASTORAL COMPLEX OF NDJANTOM-ADJAP
headOfficeFr: Siège social : NDJANTOUM-ADJAP
headOfficeEn: Head Office: NDJANTOUM-ADJAP
postalFr: BP : 275 Sangmélima
postalEn: P.O. Box: 275 Sangmélima
phones:
- Cameroon: +237 6 93 05 80 02 / +237 6 71 67 25 80
- France: +33 7 49 90 64 71
- Germany: +49 176 63 13 68 58
website: https://scoopsfuna.com
CRITICAL: All cooperative data must live in editable configuration files and must never be hardcoded.
Product Data (Preload in Config)
productName: Evele Mbole Nlan
productShort: EMN
productTypeFr: Huile de palme rouge non raffinée
productTypeEn: Unrefined red palm oil
ingredientsFr: Ingrédients : 100 % huile de palme rouge non raffinée
ingredientsEn: Ingredients: 100% unrefined red palm oil
originFr: Origine : Cameroun
originEn: Origin: Cameroon
storageFr: À conserver à l'abri de la chaleur et de la lumière. Bien refermer après ouverture.
storageEn: Store away from heat and direct light. Close tightly after opening.
producerLineFr: Produit de la SCOOPS FUNA
producerLineEn: Product of SCOOPS FUNA
Design Goal
Create a state-of-the-art, shelf-ready, export-capable visual identity.
Must feel:
- premium
- trustworthy
- African but modern
- authentic, not folkloric
- internationally legible
- strong on local retail shelves
- strong in afroshops in Europe, the UK, and North America
Avoid:
- amateur aesthetics
- visual clutter
- childish visuals
- low-trust aesthetics
- fake certifications
- medical/health claims
- overuse of gradients
- poor typography
Creative Direction
Visual Identity
- premium Afro-modern
- elegant but warm
- international supermarket quality
- clean grid-based composition
- vector-first execution
Color Palette Inspiration
- deep red palm oil
- warm amber / golden oil tones
- rich dark green
- natural leaf green
- ivory / cream neutrals
- charcoal typography
Imagery
- stylized red palm nuts / palm fruit bunches
- oil palm tree
- palm leaves
- subtle agricultural framing
- refined vector illustration, not clipart
Typography
- premium display style for EMN
- modern sans-serif for product, bilingual, and regulatory text
- strong readability at small print sizes
Market Mode Differentiation
Cameroon Model
- Bilingual FR/EN
- More expressive and warm
- More emotionally rich
- Slightly more decorative
- Still professional and export-quality
- Optimized for local retail recognition
Export Model
- Bilingual FR/EN
- Cleaner and more restrained
- More structured
- More white space
- Stronger regulatory hierarchy
- Optimized for afroshops and international retail
IMPORTANT: Do not create monolingual versions by default. Both models must support French and English together.
Label Requirements
Front Label Must Include
- EMN as dominant hero mark
- Evele Mbole Nlan
- Bilingual product descriptor (FR/EN)
- Visual of red palm fruit and/or palm tree
- Net quantity
- Optional subtle provenance line
IMPORTANT: Do NOT place the main SCOOPS FUNA logo on the front by default.
Create front templates for: 5L, 1L, 0.5L
Back Label Must Include
- SCOOPS FUNA logo prominently but tastefully
- Produit de la SCOOPS FUNA / Product of SCOOPS FUNA
- Legal/cooperative identity block
- Registration number
- Head office
- Postal address
- Phone numbers
- Website
- Ingredients
- Storage instructions
- Origin
- Lot placeholder
- Best before placeholder
- Nutrition table placeholder
- Barcode area
- QR code area
- Recycling area
- Importer/distributor placeholder for export model
- Traceability block
Back label must be clear, structured, readable, and professional.
Regulatory Architecture
CRITICAL RULES:
- Do NOT invent legal certifications
- Do NOT falsely claim compliance
- Do NOT say "EU certified" or "UK approved"
Instead:
- Create proper editable placeholders and sections for final legal review
- Add structured fields for:
- [LOT]
- [BBE]
- [NUTRITION VALUES TO BE VALIDATED]
- [IMPORTER / DISTRIBUTOR]
- [BARCODE]
- [EAN]
- [COUNTRY OF ORIGIN – FINAL REVIEW]
- [RECYCLING MARKS]
- [PACKAGING MATERIAL INFO]
For the export version, design the back label so it can be finalized by a regulatory reviewer without rebuilding the UI.
Tech Stack
Frontend
- React
- TypeScript
- Vite
- Tailwind CSS
- clsx
- zod
- react-hook-form
- lucide-react
- qrcode.react
- html-to-image or dom-to-image-more
- pdf-lib or @react-pdf/renderer
- framer-motion (subtle, if needed)
Python Export
- Python 3
- Pillow
- CairoSVG or ReportLab if needed
Python script requirements:
- Batch export labels from JSON/SVG config
- Generate PNG and PDF outputs
- Support all bottle sizes
- Support Cameroon and Export models
App Requirements
Build a real working application, not static images.
User Capabilities
- Choose market model: Cameroon or Export
- Choose bottle size: 5L, 1L, 0.5L
- Edit all label texts live
- Toggle bilingual content blocks
- Edit regulatory placeholders
- Change color theme within brand-safe limits
- Preview front label
- Preview back label
- Preview full bottle mockup
- Export SVG
- Export PNG
- Export PDF
UI Features
- Left editor panel
- Right live preview panel
- Clean professional controls
- Reusable configuration-driven architecture
Rendering Requirements
Labels
- SVG-first rendering
- Scalable vector components for:
- Label frame
- Product title
- Palm visuals
- Cooperative badge areas
- Nutrition table
- Regulatory blocks
Bottle Mockups
- Reusable bottle silhouette components
- Label wrapping effect
- Front and 3/4 view options
- Realistic but vector-friendly shading
- Transparent or amber bottle feel
- Yellow/gold cap option
Project Structure
src/
app/
assets/
components/
editor/
labels/
FrontLabel.tsx
BackLabel.tsx
LabelCanvas.tsx
LabelFrame.tsx
LogoBlock.tsx
PalmFruitArt.tsx
PalmTreeArt.tsx
NutritionTable.tsx
RegulatoryBlock.tsx
CooperativeInfoBlock.tsx
mockups/
BottleMockup.tsx
Bottle5L.tsx
Bottle1L.tsx
Bottle500ml.tsx
config/
brand.ts
product.ts
markets.ts
regulatory.ts
presets.ts
lib/
exportSvg.ts
exportPng.ts
exportPdf.ts
types/
schema.ts
models.ts
utils/
pages/
scripts/
export_labels.py
README.md
Data Model
Create typed schemas with zod for:
- BrandConfig
- ProductConfig
- MarketMode
- BottleSize
- LabelVariant
- RegulatoryFields
- NutritionFields
- ContactFields
All text, market settings, logo usage, and sizes must be config-driven.
Implementation Rules
- Use clean TypeScript
- Use reusable components
- Use strong typing
- Keep code maintainable
- Add comments only where helpful
- Do not overengineer
- Make it easy to extend to future products
- Make all business data editable from config
- Make logo path configurable
- Provide sensible default placeholders
README Requirements
Write a README explaining:
- How to install
- How to run
- How to replace the logo
- How to update product data
- How to update SCOOPS FUNA data
- How to export assets
- How to use the Python batch export script
- Where legal validation is still required before commercial release
Workflow Instructions
Work in phases and actually create files.
Phase 1: Scaffold and setup
- Inspect workspace assets
- Scaffold Vite + React + TypeScript app
- Install and configure Tailwind
- Create base folder structure
Phase 2: Config and schemas
- Create schemas and config files
- Centralize all brand/product/cooperative data
Phase 3: Label systems
- Create front label system
- Create back label system
- Ensure logo is only placed on back label by default
Phase 4: Bottle mockups
- Create bottle mockup system
- Support 5L / 1L / 0.5L
Phase 5: Export utilities
- Create SVG / PNG / PDF export
- Python batch exporter
Phase 6: Editor UI
- Create polished editor UI
- Live preview
- Presets for Cameroon / Export
Phase 7: Documentation
- Write README
- List outstanding regulatory placeholders clearly
After each phase:
- Summarize what was created
- List files added or modified
- Propose the next phase
- Continue automatically unless blocked
Final Quality Bar
The result must look like an enterprise-grade product packaging generator for a serious export-capable food brand from Cameroon.
- The front must feel iconic and commercial.
- The back must feel credible, organized, and regulation-ready.
- The SCOOPS FUNA logo must live on the back with cooperative information.
- Both Cameroon and Export variants must remain bilingual FR/EN.
