162 lines
4.9 KiB
Markdown
162 lines
4.9 KiB
Markdown
# BRAND MIGRATION — SPEC.md
|
||
|
||
## 1. Concept & Vision
|
||
|
||
MercadoDeVida ("Natural - Mercado de Vida") is a Costa del Sol-based online organic supermarket founded by Ivana & Ricardo, serving all of Spain. The brand identity comes from the legacy site (mercadodevida.es). The new platform must faithfully adopt the established brand identity — colors, typography, company information, and approved content — without inventing or approximating.
|
||
|
||
**Rule: INSPECT, DO NOT INVENT. MIGRATE, DO NOT REWRITE.**
|
||
|
||
## 2. Source of Truth
|
||
|
||
**Legacy site**: https://mercadodevida.es
|
||
**Legacy sitemap**: https://mercadodevida.es/sitemap.xml
|
||
|
||
All visual assets, colors, and content come from the legacy site. No AI approximation.
|
||
|
||
## 3. Company Identity
|
||
|
||
### 3.1 Official Business Name
|
||
|
||
```
|
||
Primary: Natural - Mercado de Vida
|
||
Abbreviated: MercadoDeVida
|
||
```
|
||
|
||
### 3.2 Founders
|
||
|
||
```
|
||
Ivana & Ricardo
|
||
```
|
||
|
||
### 3.3 Contact Information
|
||
|
||
| Field | Value |
|
||
|-------|-------|
|
||
| Address | Av. Litoral - Edif. Vistamar II - Local 18, 29680 Estepona - Málaga |
|
||
| Phone | +34 951 338 132 |
|
||
| WhatsApp | +34 676 014 074 |
|
||
| Email | info@mercadodevida.es |
|
||
|
||
### 3.4 Business Hours
|
||
|
||
```
|
||
Monday–Friday: 10:00 – 18:00
|
||
Saturday: 10:00 – 14:00
|
||
```
|
||
|
||
### 3.5 Geographic Scope
|
||
|
||
Serving all of Spain (peninsular). First Costa del Sol: Estepona, Sotogrande, Marbella, Málaga.
|
||
|
||
### 3.6 Social Links
|
||
|
||
| Platform | Handle/Lookup |
|
||
|---------|---------------|
|
||
| Instagram | Siguenos en Instagram (URL to be confirmed) |
|
||
| Facebook | Siguenos en Facebook (URL to be confirmed) |
|
||
|
||
URLs must be extracted from legacy site HTML. Do not guess.
|
||
|
||
## 4. Brand Inventory
|
||
|
||
See `BRAND_INVENTORY.md` for complete asset catalog.
|
||
|
||
## 5. Color Palette
|
||
|
||
Colors extracted from legacy site CSS. Do not eyeball from screenshots.
|
||
|
||
See `BRAND_INVENTORY.md` for source URLs and extracted values.
|
||
|
||
### Initial Observations
|
||
|
||
The legacy site appears to use:
|
||
- A green/teal primary (matching the existing `#2D6A4F` in the new platform's design tokens)
|
||
- A terracotta/coral accent
|
||
- Warm cream/beige backgrounds
|
||
- Earthy tones consistent with an organic/natural products brand
|
||
|
||
Exact CSS values must be extracted from the legacy site's stylesheet. See `BRAND_INVENTORY.md` for instructions.
|
||
|
||
## 6. Typography
|
||
|
||
**Current new platform**: Inter (sans) + Playfair Display (headings)
|
||
|
||
These should be evaluated against the legacy site's actual typography. If the legacy site uses different fonts, update the design tokens accordingly.
|
||
|
||
## 7. Information Pages
|
||
|
||
### 7.1 Source Content
|
||
|
||
| Legacy URL | New Route | Content Status |
|
||
|-----------|-----------|---------------|
|
||
| /quienes-somos | /about | Content extracted — see BRAND_INVENTORY.md |
|
||
| /quienes-somos | /contact | Content extracted — partial |
|
||
| /envios-y-formas-de-pago | /shipping | 404 on legacy — needs content creation |
|
||
| /terminos-y-condiciones | /terms | Legal text migrated — needs legal review |
|
||
| /politica-de-privacidad | /privacy | 404 on legacy — needs content creation |
|
||
| /politica-de-cookies | /cookies | 404 on legacy — needs content creation |
|
||
| /aviso-legal | /legal | Not on legacy — may need creation |
|
||
|
||
### 7.2 Content Architecture Decision
|
||
|
||
**Option A**: Typed static content in React components (current approach, works for simple pages)
|
||
**Option B**: Markdown/MDX files
|
||
**Option C**: CMS-backed (backend endpoint)
|
||
|
||
For this migration, Option A (typed static content) is acceptable if the new `ContentPage` component supports rich content. If rich content is needed, evaluate Option B.
|
||
|
||
Do NOT build a CMS just for five pages.
|
||
|
||
### 7.3 Single Source of Truth
|
||
|
||
Business information (address, phone, email, WhatsApp, hours) must be defined once and referenced from:
|
||
- Footer
|
||
- Contact page
|
||
- About page
|
||
- Checkout confirmation
|
||
- Legal pages
|
||
|
||
Create a `businessConfig` constant in `frontend/src/lib/businessConfig.ts` (or existing equivalent). Do NOT duplicate strings.
|
||
|
||
## 8. SEO Redirects
|
||
|
||
See `LEGACY_REDIRECT_MAP.md` for full redirect map.
|
||
|
||
Key principles:
|
||
- Every indexed legacy URL must either redirect (301/308) or return 410
|
||
- Product pages: 301 redirect to new slug format
|
||
- Informational pages: 301 redirect to new routes
|
||
- Category pages: map legacy OpenCart routes to new category routes
|
||
|
||
## 9. Admin Branding
|
||
|
||
Admin reuses:
|
||
- Logo (simplified or same)
|
||
- Basic brand colors (primary green)
|
||
|
||
Admin does NOT need:
|
||
- Full brand editorial content
|
||
- Marketing imagery
|
||
- Consumer-focused styling
|
||
|
||
Priority: operational usability. Admin must be clearly part of MercadoDeVida ecosystem without reducing table/form readability.
|
||
|
||
## 10. Out of Scope
|
||
|
||
- Rebuilding the legacy site functionality
|
||
- Migrating user accounts
|
||
- Migrating order history
|
||
- Migrating product catalog (already done)
|
||
- Changing domain registrar or DNS
|
||
- Third-party integrations (Instagram, Facebook)
|
||
- Payment gateway changes
|
||
- New marketing pages
|
||
|
||
## 11. Feature Flag
|
||
|
||
Not required for brand migration. Brand is purely additive.
|
||
|
||
## 12. Acceptance Criteria
|
||
|
||
See `TESTS.md`.
|