Rebrand Pinscope to Periscope across product and codebase.

Rename the core package to periscopex, update UI/docs/Docker/deploy defaults to periscope.michelebigi.it, and keep legacy version/storage key aliases so existing projects keep working.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-13 20:02:04 +02:00
co-authored by Cursor
parent 556306bf4d
commit 8d2b85600f
177 changed files with 869 additions and 766 deletions
@@ -152,7 +152,7 @@ function autoDetect(headers: string[], candidates: string[]): string | null {
}
// ---------------------------------------------------------------------------
// BOM classification — mirrors pinscopex/taxonomy.py REF_PREFIX_TO_TYPE
// BOM classification — mirrors periscopex/taxonomy.py REF_PREFIX_TO_TYPE
// ---------------------------------------------------------------------------
interface IcMpnEntry {
@@ -63,7 +63,7 @@ export function OnboardingSurvey() {
<Dialog open={open} onOpenChange={setOpen}>
<DialogContent showCloseButton={false} className="sm:max-w-sm">
<DialogHeader>
<DialogTitle>Welcome to Pinscope</DialogTitle>
<DialogTitle>Welcome to Periscope</DialogTitle>
<DialogDescription>
Two quick questions to help us improve the product.
</DialogDescription>
+1 -1
View File
@@ -73,7 +73,7 @@ export function Sidebar() {
<div className="px-4 py-4 border-b border-border">
<Link href="/dashboard" className="flex items-center gap-2">
<Cpu className="h-5 w-5 text-blue-500" />
<span className="text-sm font-semibold tracking-tight">Pinscope</span>
<span className="text-sm font-semibold tracking-tight">Periscope</span>
</Link>
</div>
@@ -96,7 +96,7 @@ export function ChangelogTimeline({ content }: { content: string }) {
</Link>
<Link href="/" className="flex items-center gap-2">
<Cpu className="h-4 w-4 text-blue-500" />
<span className="text-sm font-medium">Pinscope</span>
<span className="text-sm font-medium">Periscope</span>
</Link>
</div>
</header>
@@ -104,7 +104,7 @@ export function ChangelogTimeline({ content }: { content: string }) {
<main className="mx-auto max-w-3xl px-6 py-12">
<div className="mb-12">
<h1 className="text-3xl font-bold tracking-tight mb-2">Changelog</h1>
<p className="text-sm text-muted-foreground">What's new in Pinscope.</p>
<p className="text-sm text-muted-foreground">What's new in Periscope.</p>
</div>
<ol className="relative">
+1 -1
View File
@@ -115,7 +115,7 @@ export function LegalPageShell({ children }: { children: ReactNode }) {
</Link>
<Link href="/" className="flex items-center gap-2">
<Cpu className="h-4 w-4 text-blue-500" />
<span className="text-sm font-medium">Pinscope</span>
<span className="text-sm font-medium">Periscope</span>
</Link>
</div>
</header>
@@ -40,7 +40,7 @@ interface PdfViewerPanelProps {
className?: string;
}
const HIGHLIGHT_CLASS = "pinscope-quote-hl";
const HIGHLIGHT_CLASS = "periscope-quote-hl";
// U+00B5 MICRO SIGN and U+03BC GREEK SMALL MU render identically but the
// model and the PDF often disagree on which one — fold them together.
@@ -131,7 +131,7 @@ export function ImpedancePanel({
const url = URL.createObjectURL(blob);
const a = document.createElement("a");
a.href = url;
a.download = "pinscope.kicad_dru";
a.download = "periscope.kicad_dru";
a.click();
URL.revokeObjectURL(url);
}