Ir al artículo
Aniq-UI

HollinaMarca

Marca

Haz tuyos el sitio web y el panel: el nombre, la marca y los iconos, los colores y la tipografía, los datos de la empresa y los textos para buscadores.

Para el paquete Full Stack

Dónde está la marca

QuéSitio web (storefront/)Panel (admin-dashboard/)
Nombre y metadatossrc/config/brand.config.tssrc/config/brand.config.ts
Valores alternativos de zona horaria y monedasrc/config/booking.config.tsLos ajustes de la empresa
Colores, radio, sombrassrc/styles/theme-variables.csssrc/styles/theme-variables.css
Marca e iconospublic/brand/, public/, src/app/public/brand/, public/, src/app/
Fuentessrc/app/[locale]/layout.tsx, archivos en src/fonts/src/app/layout.tsx, archivos en src/fonts/
Textosmessages/messages/

Cada color es un token definido una vez para el tema claro (:root) y una vez para el tema oscuro (:root[data-theme="dark"]). Los componentes solo leen tokens, así que un token cambiado llega a todas las páginas. Cambia un color de marca en ambos bloques, o un tema conservará el antiguo.

El nombre del sitio web y sus valores alternativos

En storefront/src/config/brand.config.ts y storefront/src/config/booking.config.ts:

storefront/src/config
// brand.config.ts
name: { en: "Hollina", ar: "Hollina" },     // tab titles, sharing cards, the wordmark, the manifest
tagline: { en: "...", ar: "..." },           // until the dashboard's settings answer
description: { en: "...", ar: "..." },       // the installable app's description
contactEmail: "hello@example.com",           // until the dashboard's settings answer
contactPhone: "+1 202 555 0147",             // until the dashboard's settings answer
keywords: ["vacation rental", ...],          // the meta keywords

// booking.config.ts
DEFAULT_TIMEZONE = "America/New_York";       // calendar days, "today", the i18n clock
DEFAULT_CURRENCY = "USD";                    // prices without a currency of their own

El logotipo de texto junto a la marca es texto en vivo en Outfit (src/components/BrandMark.tsx), así que sigue a name. El nombre de la empresa también aparece en frases, en ambos idiomas: busca en messages/ el texto Hollina y reescribe esas líneas. El tiempo de respuesta de la página de contacto y del diálogo de preguntas ("normalmente en un día") es texto de messages/contact y messages/inquiry.

ArchivoSe usa para
public/brand/hollina-mark.svgLa marca en el tema claro (cabecera, pie de página)
public/brand/hollina-mark-white.svgLa marca en el tema oscuro
src/app/icon.svgEl icono de la pestaña del navegador
src/app/apple-icon.pngEl icono de la pantalla de inicio en iPhone y iPad
public/web-app-manifest-192x192.png, public/web-app-manifest-512x512.pngLos iconos de la aplicación instalable
public/icons/stay-types/type-*.svgLas seis marcas de tipo de alojamiento, dibujadas en currentColor
public/icons/flags/us.svg, sa.svgLas banderas del menú de idiomas

Sustituye los archivos y conserva sus nombres, o cambia mark.color y mark.white en la configuración de marca. Las fotografías propias de la empresa las sirve la API desde public/media/hollina/site/ en la carpeta de la API: 01-hero.webp (la imagen para compartir de cada página sin fotografía propia), how-dates.webp, how-pay.webp y how-arrive.webp (los tres pasos de "Cómo funciona") y host-desk.webp (la tarjeta del equipo anfitrión en la página de contacto). Sustitúyelas con los mismos nombres. Las fotografías de alojamientos y destinos se suben en el panel.

Los colores y la tipografía del sitio web

TokenClaroOscuroRol
--primaryColor#3F5B38#AEC79FAcciones principales, controles seleccionados, precios, el marco doble, el anillo de foco
--primaryColorHover#30472B#C1D6B5Al pasar el cursor y al pulsar
--primary-tint#E2E9D8#2B3B2ARellenos seleccionados, las noches seleccionadas en un calendario, paneles discretos
--background#F4F5EE#171D17Página
--surface#FFFFFF#222B22Tarjetas, cabecera, pie de página, diálogos
--text#263128#F0F3EBTítulos y texto destacado
--text-muted#586454#BEC8B7Texto secundario

storefront/BRANDING.md lista todos los tokens. Comprueba que el texto sobre tus colores se siga leyendo con una relación de 4,5 a 1 en ambos temas. Los archivos de fuentes se incluyen en src/fonts/ y se cargan con next/font/local, así que una construcción nunca los descarga y el sitio no hace ninguna petición a Google: Outfit para el texto latino y el logotipo de texto, Instrument Serif para los títulos de exhibición y Noto Sans Arabic para el texto en árabe, todas bajo la licencia SIL Open Font License. El color de la zona del mapa es STAY_AREA_COLOR en src/lib/map/mapConfig.ts, y los colores de la barra del navegador son themeColor.light y themeColor.dark en la configuración de marca.

Resultados de búsqueda, contenido compartido, precios y el dominio

  • NEXT_PUBLIC_SITE_URL es la base de cada dirección canónica, de las alternativas de idioma, de las tarjetas para compartir, de robots.txt y del mapa del sitio. Defínela con tu dirección real antes de construir.
  • Los títulos y las descripciones de página están bajo meta en cada espacio de nombres de messages/ (el de la página de inicio en messages/home, el predeterminado en messages/layouts). La página de un alojamiento usa el título y la descripción SEO propios del alojamiento, escritos en el editor, y su fotografía de portada.
  • Los precios se formatean en un solo lugar, src/lib/utils/formatPrice.ts, como el código de la moneda seguido del importe en dígitos latinos (USD 240), y los dibuja src/components/PriceDisplay. Una tarifa por noche añade su período desde las traducciones (/ night, common.stay.perNight en messages/common).

Claro, oscuro y del sistema

Ambas aplicaciones tienen un control de tema con Sistema, Claro y Oscuro. Sistema sigue al sistema operativo y cambia cuando este cambia. La elección se guarda en el localStorage del navegador (hollina-theme en el sitio web, hollina-admin-theme en el panel), no se envía nada a la API, y un script corto en el head de la página la aplica antes del primer pintado, así que una recarga nunca muestra por un instante el otro tema.

El nombre, la marca y los colores del panel

  • Nombre: name en src/config/brand.config.ts es el logotipo de texto y la mitad de marca de cada título de página (Bookings | Hollina); meta guarda el título, la descripción, las palabras clave y el autor por defecto, domain.url la base de las URL absolutas de los metadatos y manifest la aplicación instalable. El título propio de cada página está bajo meta.titles en los espacios de nombres dashboard y auth de messages/, y la etiqueta junto al logotipo de texto de la cabecera es header.workspace en messages/dashboard.
  • Marca: sustituye public/brand/hollina-mark.svg y hollina-mark-white.svg, conservando los nombres; BrandMark los pinta a partir del token --logo-bg-image en src/styles/theme-variables.css. El icono de la pestaña del navegador es src/app/icon0.svg, el icono del iPhone src/app/apple-icon.png, y los iconos de la aplicación instalable los dos archivos web-app-manifest de public/.
  • Colores: --primaryColor, --primaryColorHover, --on-primary, --primary-tint, --background, --surface, --text, --text-muted, --border y --errorColor, más los pares --tone-* para las etiquetas de estado, en src/styles/theme-variables.css, una vez por tema. Qué estado toma qué tono está en src/config/statusTones.ts.
  • Fuentes: Outfit y Noto Sans Arabic, incluidas en src/fonts/, cargadas en src/app/layout.tsx y asignadas en src/styles/base.css.

Los datos propios de la empresa

Lo que los huéspedes leen sobre la empresa son datos, no código. Se edita en los ajustes del panel y el sitio web lo lee de GET /api/settings/public, que recurre a la configuración de marca solo hasta que responde.

PestañaAjustes
Empresacompany_name, company_tagline y company_description en ambos idiomas, contact_email, contact_phone, contact_address_hint, currency, timezone, default_check_in_time, default_check_out_time, service_email_signature
Página de iniciohome_hero_stay_reference (el alojamiento del hero) y home_featured_references (los alojamientos destacados, en orden)
Pagosallow_pay_on_arrival y la cancellation_policy que leen los huéspedes, en ambos idiomas

La moneda es USD y la zona horaria America/New_York, las únicas opciones que ofrece el panel. El logotipo de la marca no se sube en el panel: viene de los archivos anteriores.

Textos y política de privacidad

Cada frase visible está en messages/, una carpeta por área con en.json y ar.json. Reescribe el texto en ambos archivos. La política de privacidad en messages/privacy es texto de plantilla y así lo dice en la página: reescríbela para tu empresa y tu país antes de pasar a producción, y luego quita esa nota (el panel enmarcado en src/features/privacy/components/PrivacyHeader.tsx, y su clave templateNote en ambos archivos). Su línea de contacto muestra el correo electrónico de los ajustes del panel.

¿Te atascaste en un paso?

Busca una solución antes de empezar de nuevo.

Solución de problemas

Preferencias de Cookies

Utilizamos cookies para mejorar tu experiencia de navegación, analizar el tráfico del sitio y personalizar el contenido. Al hacer clic en "Aceptar Todo", consientes nuestro uso de cookies para análisis y publicidad personalizada.