One place to see the performances, campaign, media and next action around each work.
Work pipeline
🤝 Opportunities
Possible work and follow-ups, before they become confirmed dates or income. Use Calendar for dates, Income for money.
0 opportunities
Opportunities list
Desktop defaults to a compact list for faster scanning. Mobile keeps the card layout.
New opportunity
Select an opportunity to edit it, or start a new one here.
Quick follow-up
Optional legacy links
Only for older Contacts or Venues links.
Danger actions
Work pipeline
🎭 Theatres & Agencies
Artistic CRM: track theatres, agencies, festivals and casting contacts through research, contact, auditions and representation.
0 organizations
Organizations
Sorted by most urgent follow-up first.
New organization
Select an organization to edit it, or start a new one here.
Pipeline
Contacts
One organization can have several contact people. Mark exactly one as primary.
Interactions
Every email, call, meeting, audition or note - a full chronology of this relationship.
Materials sent
What was actually sent, which version, and when - not just a checkbox.
Follow-ups
Repertoire
🎼 Repertoire
Read the validated canonical model: works, pieces, roles, cycles, evidence and past performances.
Canonical repertoire
Read-only Firestore view of the validated canonical model. Legacy public cards remain in Legacy tools and are not mixed with this data.
Loading canonical model...
0 itemsPublic
Select a repertoire entry to inspect its evidence, relationships and performance history.
Canonical → Public mapping workflow
Read-only proposal from canonical-public-mapping-v1.json (docs/audit/REPERTOIRE_CANONICAL_MAPPING_DECISION_2026-08-04.md). Decisions are final for this phase; this workflow only helps act on them.
0 items
Select a mapping entry to inspect its proposed decision, reasoning and any matching public record.
Business
🧾 Fee Estimate
Shape a quote from programme, scope, risk and professional baseline.
Choose or create a Programme Offer working slot before saving.
Recommended quote Calculated€0
Minimum I should accept€0
RiskLow
Professional quote target€0
Actual agreed feeNot set
Gap-
Strategic reasonNot set
Event type
Formation
Reality
Quote frame will appear here.
Scenario details
Good target, minimum, and risk update from the inputs above. Expenses stay separate from the artistic fee.
Expenses
Travel and accommodation stay separate.
Risk flags
Manual overrides
Leave blank for computed values.
Manual override active: numbers may not follow scenario.
Reality details
Do not use this fee as a future benchmark.
Artist and production details
Calculation details
Professional floor = the lower boundary for Rolando's Berlin professional tenor context. Church/cultural low fees are strategic exceptions, not normal targets.
Good target = starts around €700-€1,200 for a local public concert and rises for private, corporate, luxury, package, custom, or travel contexts.
Package fee = what the client should pay for the full formation. Two singers / track has no pianist by default; two singers + piano includes the pianist.
Artistic fee€0
Expenses separately€0
Professional floor€0
Good target low€0
Good target high€0
Package fee€0
Base cost logic, event-type weighting, and final quote positioning will appear here.
Client-facing budget text will appear here.
Internal logic will appear here.
Public profile
🏠 Home / Hero
First impression, homepage trust layer and primary public entry points.
Checking…
Advanced translation QA
Editorial QA only.
These labels power the two main buttons below the hero. Keep them short (roughly 12-24 characters). Saved field keys: cta1, cta2.
Intro CTA labels appear in the Home intro text block for this language only.
Home intro copy & presenter block
Home intro and presenter copy. Save with Home / Hero.
In prose mode, the three presenter text fields render as short paragraphs instead of bullet points.
Hero block preview
Eyebrow
Subtitle
CTA 1CTA 2
BiographyCalendar
Home intro CTA preview
Read biographyWatch & listen
Homepage layout
Reorder the four existing homepage sections safely. This only saves a strict allowlisted order and never creates new HTML.
Language-specific image; shared layout and crop.
Public image placements
Home heroLarge first-screen image.
Home introEditorial image beside the Home introduction.
BiographyDedicated portrait/content image on Biography.
RepertoireOptional secondary editorial accent.
Media gallerySelected studio, stage, and backstage photos.
Press / DossierUp to 3 official downloadable press photos.
ContactOptional image, disabled by default.
Public profile
👤 Biography
Artist biography, portrait presentation and public proof text.
Checking…
Advanced translation QA
Editorial QA only.
Profile
Stage & Concert: Europe
Stage & Concert: Buenos Aires
Training & Artistic Development
Closing paragraph
Saved per language as bio_lang. The public page uses these values first and falls back to bundled biography-data.json only when a field is empty. Paragraphs are stored as paragraphs[] plus legacy p1/p2 for compatibility.
Biography only. Current language unless applied to all.
Portrait preview.
Drag preview to set focus.
Biography text preview
Intro line
Biography
Paragraph 1
Paragraph 2
Quote
Artistic library
🎼 Repertoire
Public repertoire framing and musical categories.
Public image placements · Repertoire / Programs image
Optional public image. Leave disabled to keep the current Repertoire page unchanged.
Selected: 0
Visibility controls whether this repertoire item appears publicly. Older editorial states are treated as hidden here.
Work
📅 Calendar
Manage performances, publishing and readiness in one place.
Checking…
Events
Upcoming work first. Filters and batch actions stay available when needed.
More filters
Combine free text with filters:
past monaco
status:potential
hidden lübeck
payment:unpaid
year:2027
venue:"Waldorf Astoria"
0 selected
No event selected
Select event
Combine free text with filters:
past monaco
status:potential
hidden lübeck
payment:unpaid
year:2027
venue:"Waldorf Astoria"
No event selected
Select an event to begin.
⋯
Ready
0%
Select an event
Next action
Select an event
Choose a performance from the list to see what is missing.
Ready when selected
Completed
Publishing & exports
No public upcoming PDF-relevant Calendar change detected.
Hides steps that do not apply to this type of event (e.g. Promotion/How people get in for a private event).
Groups this performance with every other event that shares the same Production id in the Productions workspace. Leave empty for a standalone event - it will never be merged with another event just because the titles look similar.
When is it?
Where is it?
Map
Is it public?
Visibility controls whether this event is public. Private keeps the current public-safe private event presentation when published.
Visibility: -
Money
How can people attend?
Tickets & CTA
Event title & subtitle-
EN:
DE:
ES:
IT:
FR:
Extended Description (modal content)
CTA Links
CTA Labels
Address
Ticket Prices
Public Ticket Labels
What will visitors see?
This is the information visitors see when they open the event on your website.
Select an event to preview its page.
Actual received amount
Linked expenses0 rows · Total: 0
Internal-only expense tracking. These values never appear on the public website.
Paid: 0 · Unpaid: 0 · Total: 0Create or edit links in Expenses (field: Calendar event).
Door list / Entrance mode0 reservations · 0 guests · 0 seats
Admin-only entrance list for this event. Exported files include only door-list fields, so a helper can work the entrance without seeing full admin notes.
0 reservations · 0 guests
Future digital entrance mode:Not public. Later view must be admin-authenticated or protected by a private one-time token, scoped to this event only.
Reservations
Guest list
Who handles promotion?
Select an event to manage its campaign.
Advanced / All fields · Optional audience tools
Not required for marketing readiness and never generate a task - kept here only for occasional manual use. Switch to "All fields" to reach these.
Interested visitorsNo event selected
Interest registrations from the public event form for the selected event.
Select an event to load interest registrations.
Audience / Updates listNot loaded
Active opt-ins for occasional concert updates. Admin-only.
Audience contacts not loaded yet.
Image-
Event image
Advanced options
Date
Event title
Event detail
Venue · City
Advanced options (popup title override, category label, venue/city/address override, force show/hide)
For private events, venue, address, description and ticket fields are internal unless enabled in Private event public visibility.
Extra images
Images
Social sharing preview
Optional title and description for WhatsApp, Facebook, LinkedIn and other link previews. Leave empty to use the event title and event description.
Legacy field
Full image mode does not crop; focal point is not used.
Modal hero crop focus
Select an event to review readiness.
Editorial highlights & private labelsPrivate badge
Only affects private-event badge visibility on the public calendar.
Private badge text (optional override)
If empty, the public calendar uses the default localized label.
Private detail line
Only affects the private-event detail line on the public calendar.
Private detail text (optional override)
If empty, the public calendar uses the default localized detail line.
Private event public visibility
Internal unless enabled here. These controls decide what a private event may reveal publicly.
Show public titlePublic title modeCustom public titleShow More Info buttonShow public venuePublic venue modeCustom public venue lineShow public city/locationPublic location modeCustom public locationShow public address/mapsShow public ticket/price information
Advanced · scheduling, badges & internal fields
Status and type are for your workflow; date badge lines are what visitors often see on the card.
Status
Status controls whether an event is upcoming, past, or hidden.
Type
Not shown publicly.
Event date (YYYY-MM-DD)
Controls where this event falls in the calendar order.
Public date badge · day
Shown on the public event card.
Public date badge · month
Shown on the public event card.
Utilities
Ready
Danger actions
Saves titles, dates, venue, visibility, and other event fields.
Ready
SEO / Schema hints
SEO and schema hints help optimize event data for search engines and structured data. These hints appear automatically based on your event fields.
Calendar list tools, filters & bulk actions
Status filter
Highlight filter
Visibility filter
Revenue
Move to #
Selected: 0Bulk status
Bulk visibility
Bulk highlight
Calendar page settings
Section title (HTML)Section intro text
Save page heading & intro saves the calendar page title and intro text only.
Internal Calendar
Month
Filter
📥 Audience
Interested visitors from public event forms across all events.
Total registrations-
Unique emails-
Upcoming events-
With messages-
Most followed event-
Search
Event
Language
Event date
Message
Prepare update message
Creates editable text for the currently visible recipients only. Nothing is sent automatically.
Message type
Filter to one event, then prepare a copy-ready message.
Not loaded yet.
Audience registrations not loaded yet.
Business
💰 Income
What money still needs your attention, planned from Calendar events, not an accounting ledger.
Missing amount0
Missing status0
Missing amount or status0
0 eventsScope: upcoming eventsFiltersEvent scope
Revenue status
Data completeness
Payment status
Date
Event
Venue
City
Expected
Rev. Status
Payment
Actual received
Notes
Action
💰 No income rows yet. Add revenue amount and status to your Calendar events and they'll show up here automatically.
Business
💸 Expenses
What's outstanding and what you've spent; internal tracking only, never part of public website data.
Programs text appears publicly on cards and detail panels. Favor clear audience-facing language over internal notes.
IntroClosing note
Link label · from RepertoireLink label · from EPK
Hide Programs section and related public links
Saved together with this language's editorial data.
Public mirror maintenance
Restore public programme mirrors when needed.
Programme Basics
TitleDurationOn live site
Visibility
Both "On live site" and "Visibility" must be set to Visible/Published for this programme to actually appear on the public website; either one set to Hidden will hide it.
Programme Image
Optional main image for this public programme card, summary, export, and preview.
Image URL
Paste a trusted public URL. Direct uploads are not supported.
Alt text
Image fit
Image position
Default object-position
Examples: center center, 50% 42%, 65% 0%, center 62%.
Description
Description is public. Aim for 2-5 concise sentences.
Public repertoire preview
Shown on public programme pages under “Repertoire may include”. Keep this partial, not a full setlist.
Formations (one per line)Ideal for (one per line)
Program card preview
Program title
Program description
Duration
Move to #
Create
🎤 Programme Offers · internal builder
Internal offer builder. Public programme text lives in Programs / Collaborations.
Master Programmes
Internal planning only. This builder does not publish public programme text. Image crop fields sync to the matching public programme record when a Master Programme is saved.
Image
Opera Gala
Master
Loading master programme editor…
Image
Tango Tenors
Master
Loading master programme editor…
Image
Pasiones del Sur
Master
Loading master programme editor…
Image
Sacred & Lyric Concert
Master
Loading master programme editor…
Select a master programme
Public Website Content
Offer-builder fields only for now. Public programme text is currently edited under Programs / Collaborations; image crop fields below sync into the matching public programme record. Internal notes never copy into public mirrors.
Programme IDPriority order
Publication
Title
SubtitleDuration options (one per line)
Short public descriptionLonger public description
Formations (one per line)Suitable contexts (one per line)
Repertoire / Sample Works
Internal ordered setlists by duration. These full setlists are private and are not included in the public projection.
Rights and vocal caution notes stay internal. Public repertoire projection strips item-level rights flags.
Rights notesVocal caution notesEmail PitchShort pitchEmail pitchOptional venue-offer note
Advanced · disabled public publishing reference
Publishing is disabled. Public programme publishing currently uses Programs / Collaborations while Programme Offers remains internal/experimental.
Publishing disabled
Programme Offers cannot write public programme mirrors until the concept map is cleaned and approved.
When enabled, publishing would share the programme's basic public details (title, description, repertoire, formations, duration options, and images). Internal notes, full setlists, rights flags, and the email pitch always stay private.
Current public projection preview
Venue Offers / Custom Drafts
Load saved custom offers, create a venue version from a Master Programme, or continue an existing PDF/email draft.
0 saved programmes
Search
Type
Family
Duration
Language
Formation
Status
Select a saved programme to review its details here.
1. Setup
Set the programme frame
Choose the essentials first.
Programme family
Duration
Offer language
Formation
Style focus
Current frame: Gala · 30 min · English · Tenor + Piano · Open / Mixed
Programme Image
Main visual used for programme cards, public summaries, Programme Sheet PDF exports, and previews.
Header image
Custom image URL
Paste a trusted public URL. Direct uploads are not supported.
Choose default, no image, or a custom URL.
More setup options
Build method
Repertoire label
Also suggest new repertoire ideas
Use these only when you want the Opera Gala to breathe more clearly and land more strongly.
Prefer vocal pacing Allow piano interludes
Include operetta / canzone for contrast Build with gala arc
Ideal window 27-33 minAdd about 30 min to reach the target.
Find piece
Add piece
Build an editable first draft from the current frame, style focus, and internal repertoire metadata. Generate again to try another valid draft.
Suggestion filters
Availability
Vocal combination
Language
Tag
Show best matches only Browse whole library Match formation only Include non-tenor pieces0 matching pieces
3. Selected repertoire
Keep the running order clear here, then make small edits only where needed.
Tap a line to edit it, then use the actions below for quick changes.
Edit selected line
Custom line titleCustom duration (min)
Private note
Fit note: -
Quick picks
Quick picks
Fast additions for a strong first draft. Add one, then refine the running order above.
Encore options
Keep up to three optional encores here without mixing them into the main running order.
Include encore options in Programme Sheet
Dramatic arc
Dramatic arc
Assign pieces to the arc slots when you want the offer to read like a shaped recital rather than a simple list.
4. Output
4. Review, save, and sendUse the preview to check the presenter-facing version before saving or sending.
Draft only
Working draftThis programme is still only a working draft.
Save as...
Preview
This mirrors the exported Programme Sheet. On mobile, keep it closed when you only need to edit and save.
Advanced Builder / Library
Repertoire suggestions, quick picks, editorial checks, library maintenance, archive upkeep, and advanced text drafts live here.
Outside repertoire ideas
Curated outside ideas stay separate from the active offer builder. Move one into the repertoire library when you want to start developing it.
Offer wording, saved version & private notes
Use this section only when you want to adjust the title, public framing, or save a named internal version.
Paper PreviewChecking…Saved offer
Programme titleOffer label (private)
Use case
Saved status
Using language default.
Mobile phone for Programme Sheet
Used in the Programme Sheet CONTACT block. Leave empty to use the Contact section mobile.
Short programme note
Using language default.
Flexible note
Using language default.
Private notesRepertoire Library
Maintain the internal repertoire library behind the offer generator. Historical performance markers and manual-review flags stay here.
Search
Type
Language
Readiness
Tag
Sort
0 items
IDTitle
ComposerWork
Type
Language
Duration (min)Approx. duration (min)
Readiness
Availability status
Performance status
Review status
Classification & offer intelligence
Category
Voice category
Primary voicePaired voices (comma separated)
Includes tenorFit tags (comma separated)
Source groupSuggestion group
Dramatic role
Energy level
Tempo profile
Impact level
Audience appeal
Mood tags (comma separated)
Gala role
Vocal load
Texture
Style bucket
Recovery value
Best duration fit
Practical tags (comma separated) Suitable as encore
Useful as interlude Supports vocal rest
Good between blocks Good before climax
Formations (one per line)Tags (comma separated)Performed in (one concert id / year-title reference per line) Hide from Programme Offer selector by default Keep as offer-only entryPublic notesInternal notesManual sort order
Concert History Archive
Structured archive of past concerts used to enrich performed repertoire without exposing raw historical records in the offer selector.
Search
0 concerts
YearSource type
TitleFormatCollaborators (one per line)Programme items (one per line)Notes
Offer Text Outputs
Use these polished text blocks for email outreach, short summaries, or a private working draft.
Private draftEmail draftShort blurb
Quick add manually
Use this when the piece is not yet in the selector and you want to place it into the current offer immediately.
This quick entry will be added to the main programme list.
TitleComposer
WorkType
LanguageDuration (min)
Voice combination / formationEntry mode
Mark as temporary / needs review Mark as outside repertoire suggestion
Quick-added pieces can still be refined later in the full Repertoire Library editor.
Programme Sheet ready for print
Use File > Print or press Cmd+P to save this Programme Sheet as PDF if Safari does not open the print dialog automatically.
Experimental tools
🔎 Repertoire Discovery
Explore repertoire candidates before importing them into the library.
Explore future repertoire ideas from curated external-style sources, evaluate the fit, save editorial states, and import selected items into the internal repertoire library only when you are ready. This stays separate from Programme Offers until you import something on purpose.
Filters
Search
Voice / profile focus
Programme fit
Language
Composer
Work
Piece type
Vocal combination
Programme role
Duration min
Duration max
Readiness intent
Editorial state
0 resultsSuggestionsCurated source layer
Use the filters as guidance, not as a strict query form. This view can show exact matches, top recommendations, or nearby suggestions from curated Opera-Arias, LiederNet, IMSLP, tango, and historical archive source layers.
Editorial pipeline
Use states to separate quick bookmarks from serious study candidates. Import stays explicit and review-only by default.
Top recommendations
Results
Review
Select a discovery result to review fit, cautions, source details, and import options.
Legacy pipeline
📍 Venues / Opportunities
Legacy venue and outreach records kept for backup context.
Legacy reference. New actionable work belongs in Opportunities.
Outreach overview
SearchView
Status
Follow-up
0 opportunities
Venues
Use cards for day-to-day follow-up, or switch to the compact report when you want to review many opportunities at once.
Create the first opportunity to start tracking venues and strategic outreach.
Opportunity details
Select an opportunity to review strategic details, linked programme offers, and contact connections.
Create
🎬 Media
Videos, audio and public media embeds.
Videos H2 (HTML)
Search
Visibility filter
Publication filter
Bulk actionsSelected: 0Bulk action
Youtube IDTitleSubTagComposerPublic section
Repertoire category
Custom thumb URLFeatured visual
Featured layout (hero size)
Highlight on Homepage
Highlight on Media
Highlight on Calendar
Homepage highlight priority (optional)
Lower number appears first in homepage highlights. Used only when Homepage context is true.
Hidden
Visibility
Visibility controls whether this video appears publicly. Older editorial states are treated as hidden here.
Move to #
0 photos
Search
Quick filter
Load an image to detect orientation.
Image URL
Orientation
Focus / object-position
Visible
Hi-res / download URL (optional)
Caption for active languageAlt text for active language
These fields edit only the currently selected admin language. Empty localized fields stay empty here.
Localized captions and alt texts are used on the public Photos page. Fallback order is active language → English → global fallback → empty. Photographer is shared across languages.
Drag preview to set focus. Empty orientation auto-detects.
Audio H2 (HTML)Audio subtitle
Search
Visibility filter
Publication filter
Bulk actionsSelected: 0Bulk action
Provider
Embed URLExternal URL (optional)Cover image URL (optional)TitleSubSub (EN)Sub (DE)Sub (ES)Sub (IT)Sub (FR)TagComposerPublic section (placement)
Badge category (artistic label shown on card)
Featured visual
Featured layout (hero size)
Highlight on Homepage
Highlight on Media
Highlight on Calendar
Homepage highlight priority (optional)
Lower number appears first in homepage highlights. Used only when Homepage context is true.
Hidden
Visibility
Visibility controls whether this audio item appears publicly. Older editorial states are treated as hidden here.
Use provider + embed URL instead of raw HTML. This keeps the public Audio section elegant, consistent, and easier to maintain.
Public profile
✨ Highlights
Homepage feature cards and public proof points.
Independent editorial features for the home page. These records never create calendar events. Up to three published items appear immediately before Upcoming Performances.
Edit the exact copy shown on the home page. Empty image and link fields are supported.
Promote
📄 Press / EPK
Reviews, quotes, bios, PDFs and official press materials.
Checking…
Translated note (press meta · legacy/global)
Legacy section-level metadata. Use each quote's Translation note field for public translation status.
Press Reviews intro (UI · this language)Show press reviews section
Search
Visibility filter
Publication filter
Bulk actionsSelected: 0Bulk visibility
Bulk publication status
SourceQuote (base / original text)
Enter the quote in its original published language. Used as fallback when no translation is available.
Original language
Identifies the language in which the original review was published.
Translations & editorial notes
Add translated versions of the quote and optional per-language editorial notes visible on the public press page.
ProductionArtist / role credit
Optional. Shown publicly below the production line. Identifies the artist's role in the production; not part of the review text.
🇩🇪 DE🇬🇧 EN🇦🇷 ES🇮🇹 IT🇫🇷 FR
URLInternal note
⚠ Internal note is admin-only. It is never included in public publishing, static builds, or Firestore public mirrors.
On live list
Visibility
Visibility controls whether this quote appears publicly. Older editorial states are treated as hidden here.
Press quote preview
Quote text
Source
Move to #
Press Quotes feed the public press/reviews area (/press, /reviews). Audience and collaborator recommendations are managed separately under Testimonials.
Public press PDF materials and canonical PDF publishing. Use full https:// links where possible.
Public PDFs
Checking Firebase Auth session…
Ready
PDF family
Sign in with Firebase Auth to request GitHub Action publishing.
EPK bios for the language selected in the top bar.
Bio 50 wordsBio 150 wordsFull bio · paragraph 1Full bio · paragraph 2Full bio · paragraph 3Full bio · paragraph 4
Advanced translation QA
Editorial QA only.
Search
Paste a trusted public URL. Direct uploads are not supported.
Photo URLHi-res download URL
Orientation
Visible
Preview fit
Preview aspect ratio
Preview position preset
Manual preview object-position
CaptionAlt textPhotographer
The public Press / Dossier page shows the first 3 visible EPK photos as official press photos. If hi-res URL is empty, the preview remains visible and the download button is hidden.
Paste a trusted public URL. Direct uploads are not supported.
Move to #
CV PDF per language. If empty for a language, the site falls back to the default PDF under docs/ when applicable.
Paste a trusted public URL. Direct uploads are not supported.
EN statusEN PDF URL
DE statusDE PDF URL
ES statusES PDF URL
IT statusIT PDF URL
FR statusFR PDF URL
Public profile
📬 Contact / Booking
Public contact copy, booking guidance and form text.
Checking…
Advanced translation QA
Editorial QA only.
Field purpose
This editor mixes public contact-page copy with contact details reused elsewhere. Keep optional fields only when they have a clear purpose.
Public contact page: title, subtitle, email, email button.
Programme Sheet / offer emails: email, mobile phone, website URL.
Not shown on the live contact page right now: mobile phone, website button label, website URL.
Structured data / schema: not driven from these admin fields today.
Page title
Public contact-page heading. Language-specific.
Subtitle
Public contact-page body copy. Language-specific.
This section is public and language-specific. Keep the wording direct and action-oriented.
Email
Public email CTA target. Also reused in Programme Sheet exports and offer emails.
Mobile phone
Not shown on the live contact page. Used as fallback contact detail in Programme Sheets unless an offer-specific phone overrides it.
Email button label
Public contact-page CTA label. Language-specific.
Website button label
Kept for compatibility and reused with the website URL in Programme Sheets and offer emails. The live contact page does not currently show this button.
Website URL
Optional. Used in Programme Sheets and offer emails. The live contact page does not currently show this link.
Public image placements · Contact / Booking image
Image enabled
Placement
Image URLAlt textAspect
Fit
Position preset
Manual object-position
Disabled by default so the contact form keeps its current prominence.
Public contact page preview
Contact title
Contact subtitle
Email buttonWebsite button
This preview mirrors the live contact-page CTA area. Website and phone are not shown there right now.
Public profile
💳 Card / QR
Public QR card copy and links. Keep it public-safe.
Public QR card
Visibility
Hidden keeps hardcoded public fallbacks available, but the public mirror marks the admin content hidden.
Card title
Language-specific title. HTML is allowed only for the styled surname span already used by the page.
Subtitle / short intro
Short bio / description
Featured media
Featured media type
Featured media label
Featured media URL
YouTube URLs are embedded automatically. Other URLs open as external media links.
Main image URLMain image alt textImage object-position / crop
Programmes block
Language flags
Featured media state
Card preview
Saved to rg_card_en and published as public_rg_card_en.
📣Marketing Campaigns
What needs promotion next?
One recommended campaign action first. Everything else stays tucked away until you need it.
Campaigns
Next stepsOpen tasks onlyOther campaignsCreate or reopen
Advanced toolsMetrics, shortcuts, refresh
Needs attention
Tools
Presentation Mode
Hide sensitive information and disable editing when showing the admin to other people.
Presentation Security
Require a separate PIN to exit Presentation Mode — independent of your Google sign-in, so an unlocked computer alone can't reveal sensitive information.
Require PIN to exit Presentation Mode
No PIN set
Automatically re-enable Presentation Mode after
Campaigns › Campaign Workspace
Campaigns › Prompt Library
Prompt Library
Create and manage reusable prompts for marketing content. Nothing here is sent to any AI provider yet.
Unsaved changes
Search promptsCategory
Platform
Language
Status
Favorites only
Prompts
Editor
Prompt preview
Campaigns › AI Content
AI Content
Build ready-to-use marketing prompts from events and templates. Nothing here is sent to any AI provider; copy the result manually into Claude, ChatGPT, or another tool.
1. Select event
Event scope
Search events
Event
This event is currently hidden from the public website.
2. Select prompt
PlatformContent functionLanguageFavorites only
Prompt template
No active prompts are available.
3. Language
Output language
4. Context preview
Additional context
Content goalKey factsCall to actionProof elements
Only include proof that is factually available. Leave blank if none exists.
Additional instructionsTarget audience
Desired length
Custom lengthTone override
5. Prompt preview
Missing information
Show context block
6. Prepare
Ready to paste into Claude, ChatGPT or another AI.
Generated content
Session drafts
Drafts live only in this browser session and disappear on reload.
Campaigns › Content History
Content History
The persistent record of saved marketing content and its versions.
Unsaved changes
Search historyPlatform
Status
Language
Event
Prompt
Date range
Favorites only
Items
Editor
Versions
Version preview
Campaigns › Content Planner
Content Planner
Plan upcoming posts: status, platform, publication date, and links to events, prompts and saved content.
Unsaved changes
Search plannerStatus
Platform
Language
Sort by
Planned posts
Editor
Legacy pipeline
👥 Contacts / Follow-ups
Legacy contact records and follow-up notes.
Legacy reference. New follow-up work belongs in Opportunities.
0 contactsStatus filter
Type filter
Priority filter
Follow-up filter
Sort by
New contact
Linked venue
Contact name / organizationPerson nameEmailPhoneOrganizationCountryLanguage
Type
Project typeRoleSubjectStatus
Priority
Date (YYYY-MM-DD)Last contact (YYYY-MM-DD)Next follow-up (YYYY-MM-DD)Message sentFee offeredFee acceptedDeadline materials (YYYY-MM-DD)Source
Notes
Selected: 0
Settings
🌐 UI / Translations
Interface labels, public UI strings and translation controls.
Checking…
Advanced translation QA
Editorial QA only.
Menu and UI wording for the language selected above. Changes apply only to that language.
Reorder the admin sidebar buttons. Changes apply to both desktop and mobile navigation.
Shared chrome effects
These controls are global for the site and are stored in the EN UI document.
Menu logo halo breathing enabled
Menu logo halo intensity
Footer feather breathing enabled
Footer feather halo intensity
Advanced · all UI strings as JSON
Public profile
💬 Testimonials / Recommendations
Submitted recommendations. Approve to publish on /testimonials/ for the selected language.
Settings
🚀 Publishing dashboard
Publish status only. Deployment happens elsewhere.
After imports, resave affected sections.
Numbers reflect saved content. Program counts use the language in the top bar; press, media, calendar, and repertoire are shared lists. Readiness checks below are guidance only, not publication states.
Settings
🌍 Translation workspace
Cross-language editing for Home, Biography, Contact, UI labels, EPK bios, and Programs copy. English (EN) is always the reference column.
Consistency notes
Flags gaps vs EN, PDF parity, and text that still matches EN; editorial hints only.
Settings
⚙️ System / Tools
Backup, import, maintenance and session closeout tools.
Quick guide · Admin v2
Login. Google sign-in connects Firebase storage.
Data storage. All data is stored directly in Firestore. Media uses canonical rg_vid, Programs use language-specific rg_programs_* documents, and other sections use their respective Firestore documents.
Before big edits. Create a backup.
Site health.Site health runs editorial checks and links you to places that need attention; good for routine reviews.
Publishing. The Publishing section summarizes published and hidden items plus readiness checks; pair it with each section’s own save buttons.
Translations. The Translation workspace is for cross-language copy with English as reference; not a replacement for saving individual sections.
Import. Narrow Import scope in the top bar when possible; imports overwrite matching stored keys. Read the preview, confirm deliberately, and prefer a fresh backup first.
Before you leave. Spot-check the live site.
Backup
Download everything this admin can edit into one JSON file on your computer. Use before risky imports.
Import
Import can overwrite matching content already saved in the admin. Choose a narrower Import scope in the top bar if you only want part of the site.
Strongly recommended: run Create backup now first, then use top bar Import JSON.
Export / Maintenance
Top bar Owner backup JSON downloads the same kind of internal owner backup bundle. It is not public-safe JSON.
Editorial PDF tools
Quick access to public PDF links and EPK assets.
Before you sign off
Light checklist for this browser session only; it does not change any saved content. Several items tick automatically when you use the matching action; you can also check them manually.
Backup downloaded (or export saved)
Site health reviewed
Publishing summary refreshed
Public PDFs reviewed
Live site spot-check
Import preview
After you pick a JSON file in the top bar, a summary appears here before anything is saved.
Settings
🩺 Site health
A calm publishing check across sections and languages. Critical items affect live public output, Recommended items are worthwhile follow-ups, and Structural differences flag cross-language or setup gaps that do not necessarily break the site.
After imports, resave affected sections.
Checking…
Section health
Language completeness
Issues and next actions
Create multiple dates
Creates one new event per line, using the selected event as the template. Title, venue, descriptions, images, CTA and visibility are copied; only date and time change. Nothing is created until you confirm.
Add multiple image URLs
Paste one URL per line. Nothing is added until you press Add URLs.
Delete campaign
You are about to permanently delete .
Calendar events linked to this campaign will not be deleted - only the connection to this campaign is removed.