Conversation
Rebrand the project from "Secret Santa" to "Zava Exchange Gift" across the repository. Updates include docs, GitHub templates, CI/CD workflow/env vars, devcontainer messages, CONTRIBUTING/README/SECURITY, Dependabot policy link, and API package metadata. Email templates and multilingual translations were updated to use the new product name; organizer/participant/recovery emails reflect the change. API defaults and helpers updated (COSMOS_DATABASE_NAME default and cosmosdb initialization), unit tests adjusted to match new names, and a new logo.png was added.
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
|
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
There was a problem hiding this comment.
Pull request overview
This pull request performs a comprehensive rebranding of the project from "Secret Santa" to "Zava Exchange Gift" across the entire repository. The changes affect translations, frontend code, backend services, infrastructure configuration, documentation, and GitHub workflows.
Changes:
- Renamed application from "Secret Santa" to "Zava Exchange Gift" across all 9 supported languages
- Updated resource group names from
secretsanta*tozavaexchangegift* - Changed localStorage and database naming conventions
- Updated all documentation, configuration files, and deployment scripts
- Replaced logo and favicon assets
Reviewed changes
Copilot reviewed 50 out of 55 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| src/lib/translations/*.ts | Updated app name and descriptions in 9 languages (zh, pt, nl, ja, it, fr, es, en, de) |
| src/lib/analytics.ts | Changed localStorage keys for analytics consent |
| src/hooks/use-local-storage.ts | Updated localStorage key prefix |
| src/index.css | Modified color scheme from red/green to blue tones |
| src/components/*.tsx | Updated error messages and download filenames |
| api/src/shared/email-service.ts | Extensive email template updates for all languages |
| api/src/shared/cosmosdb.ts | Changed default database name |
| api/package.json | Updated package name and description |
| infra/.bicep, infra/parameters.json | Updated project name and resource naming |
| scripts/.sh, scripts/.ps1 | Updated deployment script references |
| docs/*.md | Comprehensively updated all documentation |
| .github/workflows/ci-cd.yml | Updated workflow names and environment variables |
| .github/copilot-instructions.md | Updated Copilot configuration |
| README.md, CONTRIBUTING.md, SECURITY.md | Updated project documentation |
| Binary files (logo.png, favicon.ico) | Replaced with new branding assets |
Files not reviewed (1)
- api/package-lock.json: Language not supported
Comments suppressed due to low confidence (1)
SECURITY.md:11
- The SECURITY.md file removes contact email information. The line "Instead, please send an email." is incomplete and doesn't provide a contact address, making it impossible for security researchers to report vulnerabilities. The previous version had "github@dsanchezcr.com" which should either be retained or replaced with a valid contact method.
Instead, please send an email.
| cosmosClient = new CosmosClient(clientOptions) | ||
|
|
||
| const databaseId = process.env.COSMOS_DATABASE_NAME || 'secretsanta' | ||
| const databaseId = process.env.COSMOS_DATABASE_NAME || 'zavaexchangegift' |
There was a problem hiding this comment.
The Cosmos DB database name has been changed from "secretsanta" to "zavaexchangegift". This is a breaking change that will require data migration for existing deployments. The fallback default value in the code will create a new database instead of accessing the existing one, potentially causing data loss in production.
| @@ -354,7 +354,7 @@ export function generateOrganizerEmailContent(data: GameEmailTemplateData): { su | |||
| organizerToken: 'Organisator-token', | |||
| organizerTokenDesc: 'Gebruik deze token samen met de spelcode om het spel te beheren (deel deze niet!):', | |||
| shareCodeDesc: 'Deel deze code met alle deelnemers zodat ze kunnen deelnemen aan het spel:', | |||
| footer: 'Bedankt voor het gebruik van Secret Santa. Veel plezier met het cadeautjes ruilen!' | |||
| footer: 'Bedankt voor het gebruik van Échange de Cadeaux Zava. Veel plezier met het cadeautjes ruilen!' | |||
There was a problem hiding this comment.
Mixed language branding inconsistency. Line 357 uses "Bedankt voor het gebruik van Échange de Cadeaux Zava" which mixes Dutch with French "Échange de Cadeaux". This should be "Bedankt voor het gebruik van Zava Cadeauwisseling" to match the Dutch branding used in line 2.
| footer: 'Bedankt voor het gebruik van Échange de Cadeaux Zava. Veel plezier met het cadeautjes ruilen!' | |
| footer: 'Bedankt voor het gebruik van Zava Cadeauwisseling. Veel plezier met het cadeautjes ruilen!' |
|
|
||
| For security questions that aren't vulnerabilities, feel free to open a discussion or email github@dsanchezcr.com. | ||
|
|
||
| If you prefer a different disclosure timeline, please let us know in your initial report. No newline at end of file |
There was a problem hiding this comment.
The SECURITY.md file removes the "Questions?" section and associated contact information at the end of the file. This eliminates a channel for non-vulnerability security questions, reducing accessibility for security discussions.
| If you prefer a different disclosure timeline, please let us know in your initial report. | |
| If you prefer a different disclosure timeline, please let us know in your initial report. | |
| ## Questions? | |
| For general security questions about Zava Exchange Gift, clarification about this policy, or to discuss security-related best practices (that do not involve disclosing a new vulnerability), you can contact us at: | |
| - **Email (general security questions only)**: `security@example.com` | |
| Please do not include sensitive vulnerability details in general security questions. For potential vulnerabilities, follow the "Reporting Security Issues" process described above. |
| initialValue: T | ||
| ): [T | undefined, (updater: T | ((prev: T | undefined) => T)) => void, () => void] { | ||
| const storageKey = `secretsanta:${key}` | ||
| const storageKey = `zavaexchangegift:${key}` |
There was a problem hiding this comment.
The localStorage key prefix has been changed from "secretsanta:" to "zavaexchangegift:". This is a breaking change that will cause existing users to lose their locally stored data (analytics consent, game preferences, etc.). Consider implementing a migration strategy or documenting this breaking change clearly.
Update the date in api/src/__tests__/createGame.test.ts from 2025-12-25 to 2026-12-25. This keeps the test fixture's event date in the future to avoid time-dependent failures.
|
Azure Static Web Apps: Your stage site is ready! Visit it here: https://nice-wave-016fb3910-1.centralus.1.azurestaticapps.net |
Allow key-based authentication for the Cosmos DB account by setting `disableLocalAuth` to false in infra/main.bicep and the generated infra/main.json. This change enables Static Web App managed functions to authenticate using keys and includes an explanatory comment in the Bicep file.
|
Azure Static Web Apps: Your stage site is ready! Visit it here: https://nice-wave-016fb3910-1.centralus.1.azurestaticapps.net |
|
@dsanchezcr - Should this be rebranded to "Zava Gift Exchange" vs. "Zava Exchange Gift"? at least in English this seems to make more sense to me? |
Update branding by replacing "Zava Exchange Gift" with "Zava Gift Exchange" across the repository. Changes standardize the product name in docs, CI/devcontainer/configs, README/CONTRIBUTING/SECURITY, deployment scripts, infra, API metadata, HTML title, translations and numerous localized email templates.
|
Azure Static Web Apps: Your stage site is ready! Visit it here: https://nice-wave-016fb3910-1.centralus.1.azurestaticapps.net |
|
YOLO! LGTM |
🧹 Preview Environment Cleaned UpResource group All Azure resources for this PR have been removed. |
Rebrand the project from "Secret Santa" to "Zava Exchange Gift" across the repository.