Bootstraps GitHub Spec Kit (scripts, templates, workflow, speckit-* skills) for this frontend project, mirroring the spec-driven workflow already used in supporthub-api. Ratifies seven founding principles: SaaS as the sole identity/access authority, the backend as the sole source of business logic, strict portal boundaries ((public)/(customer)/ (support)/(admin)), a single typed API client layer (no ad hoc fetching), configuration over hardcoding for anything the backend exposes as admin-configurable, an accessible/responsive baseline for an enterprise all-day tool, and required unit/integration/E2E testing gates. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
39 lines
889 B
PowerShell
39 lines
889 B
PowerShell
#!/usr/bin/env pwsh
|
|
|
|
param(
|
|
[Parameter(Position=0)]
|
|
[string]$TemplateName,
|
|
[switch]$Json,
|
|
[switch]$Help
|
|
)
|
|
|
|
$ErrorActionPreference = 'Stop'
|
|
|
|
if ($Help) {
|
|
Write-Output "Usage: resolve-template.ps1 <template-name> [-Json]"
|
|
exit 0
|
|
}
|
|
|
|
if (-not $TemplateName) {
|
|
[Console]::Error.WriteLine("ERROR: Template name is required")
|
|
exit 1
|
|
}
|
|
|
|
. "$PSScriptRoot/common.ps1"
|
|
|
|
$repoRoot = Get-RepoRoot
|
|
$templateContent = Resolve-TemplateContent -TemplateName $TemplateName -RepoRoot $repoRoot
|
|
if ($null -eq $templateContent) {
|
|
[Console]::Error.WriteLine("ERROR: Could not resolve required $TemplateName from the template override stack for $repoRoot")
|
|
exit 1
|
|
}
|
|
|
|
if ($Json) {
|
|
[PSCustomObject]@{
|
|
TEMPLATE_NAME = $TemplateName
|
|
TEMPLATE_CONTENT = $templateContent
|
|
} | ConvertTo-Json -Compress
|
|
} else {
|
|
[Console]::Out.Write($templateContent)
|
|
}
|