generated from bisco/codex-bootstrap
feat: apply azionelab branding to frontend
This commit is contained in:
@@ -11,14 +11,15 @@ import { API_BASE_URL } from '../services/api-config.token';
|
||||
template: `
|
||||
<section class="hero page">
|
||||
<div class="hero-copy">
|
||||
<p class="eyebrow">AzioneLab Theatre Company</p>
|
||||
<h1>Small-stage evenings, thoughtful performances, simple reservations.</h1>
|
||||
<img class="hero-logo" src="assets/azionelab-logo.svg" alt="AzioneLab" />
|
||||
<p class="eyebrow">AzioneLab</p>
|
||||
<h1>Laboratori, scena e produzioni che mettono il pubblico al centro.</h1>
|
||||
<p class="supporting">
|
||||
AzioneLab brings contemporary theatre into intimate venues. This public frontend is shaped around clear show discovery, lightweight booking, and a calm arrival experience at the door.
|
||||
AzioneLab intreccia laboratori teatrali, produzioni audio/visive e una presenza scenica pensata per spazi vivi e raccolti. Il sito accompagna il pubblico con chiarezza: scoperta degli spettacoli, prenotazione essenziale, conferma serena all'ingresso.
|
||||
</p>
|
||||
<div class="hero-actions">
|
||||
<a mat-flat-button color="primary" routerLink="/shows">Browse upcoming shows</a>
|
||||
<a mat-stroked-button routerLink="/check-in">Staff check-in</a>
|
||||
<a mat-flat-button color="primary" routerLink="/shows">Scopri gli spettacoli</a>
|
||||
<a mat-stroked-button routerLink="/check-in">Area accoglienza</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -26,8 +27,8 @@ import { API_BASE_URL } from '../services/api-config.token';
|
||||
<div class="curtain"></div>
|
||||
<div class="stage-glow"></div>
|
||||
<div class="stage-copy">
|
||||
<span>Tonight at AzioneLab</span>
|
||||
<strong>Doors open 30 minutes before the performance</strong>
|
||||
<span>Questa sera da AzioneLab</span>
|
||||
<strong>Le porte aprono 30 minuti prima dell'inizio</strong>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
@@ -35,29 +36,29 @@ import { API_BASE_URL } from '../services/api-config.token';
|
||||
<section class="overview page">
|
||||
<div class="section-heading">
|
||||
<div>
|
||||
<p class="eyebrow">At a glance</p>
|
||||
<h2>Built for a small company, not a sprawling ticketing empire</h2>
|
||||
<p class="eyebrow">In breve</p>
|
||||
<h2>Un sito pensato per una compagnia viva, non per una macchina impersonale di biglietteria</h2>
|
||||
</div>
|
||||
<p class="supporting">The public experience stays simple: browse a show, reserve seats, confirm by email, arrive with a QR code.</p>
|
||||
<p class="supporting">L'esperienza pubblica resta semplice: scegli uno spettacolo, richiedi i posti, conferma via email, arriva con il tuo QR code.</p>
|
||||
</div>
|
||||
|
||||
<div class="feature-grid">
|
||||
<mat-card class="feature-card">
|
||||
<mat-card-title>Find the right performance</mat-card-title>
|
||||
<mat-card-title>Scegli la replica giusta</mat-card-title>
|
||||
<mat-card-content>
|
||||
<p>Show listings and detail pages keep venue, schedule, and availability visible without noise.</p>
|
||||
<p>Le schede degli spettacoli tengono in primo piano luogo, orari e disponibilita', senza confusione.</p>
|
||||
</mat-card-content>
|
||||
</mat-card>
|
||||
<mat-card class="feature-card">
|
||||
<mat-card-title>Confirm by email</mat-card-title>
|
||||
<mat-card-title>Conferma via email</mat-card-title>
|
||||
<mat-card-content>
|
||||
<p>Reservations stay pending until the audience member confirms, which keeps capacity trustworthy and easy to manage.</p>
|
||||
<p>Le richieste restano in attesa finche' il pubblico non conferma, cosi' la capienza resta affidabile e semplice da gestire.</p>
|
||||
</mat-card-content>
|
||||
</mat-card>
|
||||
<mat-card class="feature-card">
|
||||
<mat-card-title>Check in quickly</mat-card-title>
|
||||
<mat-card-title>Accoglienza rapida</mat-card-title>
|
||||
<mat-card-content>
|
||||
<p>Front-of-house staff can preview a token, validate it server-side, and record entry in one compact flow.</p>
|
||||
<p>Lo staff puo' verificare il token, controllarlo lato server e registrare l'ingresso in un flusso compatto.</p>
|
||||
</mat-card-content>
|
||||
</mat-card>
|
||||
</div>
|
||||
@@ -65,21 +66,21 @@ import { API_BASE_URL } from '../services/api-config.token';
|
||||
|
||||
<section class="journey-grid page">
|
||||
<div class="journey-copy">
|
||||
<p class="eyebrow">Audience journey</p>
|
||||
<h2>From interest to entrance in a few quiet steps</h2>
|
||||
<p class="eyebrow">Percorso del pubblico</p>
|
||||
<h2>Dall'interesse all'ingresso in pochi passaggi chiari</h2>
|
||||
<ol>
|
||||
<li>Browse the public programme and open a show page.</li>
|
||||
<li>Reserve seats for a performance and confirm by email.</li>
|
||||
<li>Keep the QR code ready on your phone or on paper for entry.</li>
|
||||
<li>Esplora la programmazione pubblica e apri la scheda di uno spettacolo.</li>
|
||||
<li>Richiedi i posti per una replica e conferma via email.</li>
|
||||
<li>Tieni pronto il QR code sul telefono o su carta per l'ingresso.</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<mat-card class="meta-card">
|
||||
<mat-card-title>Runtime wiring</mat-card-title>
|
||||
<mat-card-title>Base tecnica</mat-card-title>
|
||||
<mat-card-content>
|
||||
<p class="meta-label">API base URL</p>
|
||||
<p class="meta-label">URL base API</p>
|
||||
<code>{{ apiBaseUrl }}</code>
|
||||
<p class="meta-note">The frontend remains aligned with the existing Django API surface without changing backend contracts.</p>
|
||||
<p class="meta-note">Il frontend resta allineato alle API Django gia' esistenti, senza cambiare i contratti del backend.</p>
|
||||
</mat-card-content>
|
||||
</mat-card>
|
||||
</section>
|
||||
@@ -97,6 +98,13 @@ import { API_BASE_URL } from '../services/api-config.token';
|
||||
padding: 34px 0 20px;
|
||||
}
|
||||
|
||||
.hero-logo {
|
||||
width: min(220px, 52vw);
|
||||
height: auto;
|
||||
display: block;
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin: 0;
|
||||
max-width: 11ch;
|
||||
|
||||
Reference in New Issue
Block a user