Restaurant23 Storefront Template
Template de storefront para restaurantes, integrado con Cadences.app como backoffice.
🚀 Características
- Astro 4.16 - SSG con Islands Architecture
- React 18 - Componentes interactivos
- Tailwind CSS 3.4 - Estilos modernos y customizables
- i18n - Multiidioma (ES/EN) listo para usar
- Cadences.app - Integración completa con DATA_TABLE
📂 Estructura del Proyecto
src/
├── components/
│ ├── common/ # Header, Footer, Navigation
│ ├── home/ # Secciones de la página de inicio
│ └── reservations/ # Formulario de reservas (React)
├── config/
│ └── storefront.config.ts # Configuración del restaurante
├── data/
│ └── models.ts # Modelos TypeScript (Room, Menu, Dish, etc.)
├── i18n/
│ ├── es.json # Traducciones español
│ ├── en.json # Traducciones inglés
│ └── index.ts # Sistema de i18n
├── layouts/
│ └── MainLayout.astro # Layout principal con SEO
├── lib/
│ └── cadences.ts # Cliente API de Cadences
├── pages/
│ ├── index.astro # Inicio (ES)
│ ├── carta.astro # La Carta (ES)
│ ├── menus.astro # Menús (ES)
│ ├── nosotros.astro # Nosotros (ES)
│ ├── contacto.astro # Contacto (ES)
│ ├── reservar.astro # Reservar (ES)
│ └── en/
│ ├── index.astro # Home (EN)
│ ├── menu.astro # Menu (EN)
│ ├── reservations.astro # Book (EN)
│ └── ...
└── styles/
└── global.css # Estilos globales + componentes Tailwind
🛠️ Configuración
1. Variables de Entorno
Crea un archivo .env:
CADENCES_API_URL=https://api.cadences.app
CADENCES_CUSTOMER_ID=tu-customer-id
CADENCES_ORG_ID=tu-organization-id
PUBLIC_GOOGLE_MAPS_KEY=tu-google-maps-key
PUBLIC_STRIPE_KEY=tu-stripe-public-key
2. Configuración del Restaurante
Edita src/config/storefront.config.ts:
export const storefrontConfig: StorefrontConfig = {
name: 'Mi Restaurante',
contact: {
phone: '+34 912 345 678',
email: 'hola@mirestaurante.com',
address: { /* ... */ }
},
// ...
};
3. Traducciones
Edita los archivos en src/i18n/:
es.json- Textos en españolen.json- Textos en inglés
🚀 Comandos
# Instalar dependencias
npm install
# Desarrollo
npm run dev
# Build para producción
npm run build
# Preview del build
npm run preview
📊 Proyectos DATA_TABLE en Cadences
El template espera estos proyectos configurados en Cadences:
| Proyecto | Descripción |
|---|---|
restaurant_config |
Configuración general |
restaurant_rooms |
Salas y espacios |
restaurant_schedules |
Horarios por temporada |
restaurant_menus |
Menús (degustación, del día, etc.) |
restaurant_carta |
Platos de la carta |
restaurant_customers |
Base de clientes |
restaurant_reservations |
Reservas |
restaurant_blog |
Artículos del blog (opcional) |
🎨 Personalización
Colores
Edita tailwind.config.js:
colors: {
primary: { /* Naranja */ },
accent: { /* Verde oliva */ },
warm: { /* Tonos tierra */ }
}
Tipografía
El template usa:
- Playfair Display - Títulos
- Inter - Cuerpo de texto
🌐 Deployment
Cloudflare Pages
# Build command
npm run build
# Output directory
dist
# Environment variables
# Configura en el dashboard de Cloudflare
Vercel
El archivo vercel.json ya está configurado.
📄 Licencia
MIT - Cadences Lab