feat(brand): chemistry rebrand across panel + marketing
The logged-in panel is now Catalyst Console (by Corrosion); the marketing site
keeps Corrosion as the platform/company and introduces the lexicon.
- Wordmark: panel/auth Logo lockup -> 'Catalyst' / 'by Corrosion'; the shared
C-core house mark (CorrosionMark) is untouched. Marketing nav/footer keep the
'Corrosion' wordmark.
- Titles: panel routes -> '{View} · Catalyst'; auth -> Catalyst; document.title
fallback + index.html -> 'Catalyst Console'. Marketing titles stay '— Corrosion'.
- Host agent user-facing copy -> 're-Agent' across panel + marketing (the
binary filename / CDN URLs / config paths / domains are UNCHANGED — that's the
separate infra/binary-rename sprint; 'Download re-Agent' fetching
corrosion-host-agent-* is the intended intermediate state).
- Deploy-recipe 'blueprint/template' -> 'Formula/Formulae' in marketing + roadmap;
Rust in-game 'blueprint wipe' kept (game term).
- docs/BRANDING.md added (Oracle review + locked lexicon).
vue-tsc + vite green; rendered clean both faces (Catalyst panel / Corrosion
marketing), 0 console errors.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -87,7 +87,7 @@ function handleWebSocketMessage(message: WebSocketMessage) {
|
||||
let unsubscribe: (() => void) | null = null
|
||||
|
||||
onMounted(() => {
|
||||
addLine('Corrosion console initialized.', 'system')
|
||||
addLine('Catalyst Console initialized.', 'system')
|
||||
addLine('Type a command and press Enter to send it to the server.', 'system')
|
||||
if (server.connection?.connection_status !== 'connected') {
|
||||
addLine('Warning: server is not connected. Commands will fail.', 'warning')
|
||||
|
||||
@@ -259,7 +259,7 @@ function navServer() { router.push('/server') }
|
||||
<EmptyState
|
||||
icon="server"
|
||||
title="No server connected"
|
||||
description="Install the Corrosion host agent on your host machine to begin managing your server from Corrosion."
|
||||
description="Install re-Agent on your host machine to begin managing your server from Catalyst."
|
||||
>
|
||||
<template #action>
|
||||
<Button icon="server" @click="navServer">Set up server</Button>
|
||||
@@ -404,7 +404,7 @@ function navServer() { router.push('/server') }
|
||||
<div class="dash__col dash__col--side">
|
||||
|
||||
<!-- Resources — real stats from agent; null = '—' -->
|
||||
<Panel title="Resources" subtitle="Host agent telemetry">
|
||||
<Panel title="Resources" subtitle="re-Agent telemetry">
|
||||
<div class="solo-meters">
|
||||
<ResourceMeter
|
||||
label="CPU"
|
||||
@@ -418,7 +418,7 @@ function navServer() { router.push('/server') }
|
||||
/>
|
||||
</div>
|
||||
<div v-if="soloCpu === null && soloRamMb === null" class="meters-note">
|
||||
Resource metrics arrive via the host agent heartbeat.
|
||||
Resource metrics arrive via re-Agent heartbeat.
|
||||
<Button size="sm" variant="ghost" icon="server" class="meters-cta" @click="navServer">
|
||||
Agent setup
|
||||
</Button>
|
||||
|
||||
@@ -193,8 +193,8 @@ async function confirmDelete(path: string) {
|
||||
<Panel v-if="!instancesStore.loading && instancesStore.instances.length === 0">
|
||||
<EmptyState
|
||||
icon="server"
|
||||
title="No host agent connected"
|
||||
description="Install the host agent from the Server page to manage files on your game server."
|
||||
title="No re-Agent connected"
|
||||
description="Install re-Agent from the Server page to manage files on your game server."
|
||||
>
|
||||
<template #action>
|
||||
<Button variant="secondary" size="sm" icon="server" @click="router.push('/server')">
|
||||
|
||||
@@ -154,7 +154,7 @@ function relativeHeartbeat(iso: string | null): string {
|
||||
<EmptyState
|
||||
icon="server"
|
||||
title="No hosts connected yet"
|
||||
description="Install the Corrosion host agent on your server machine to see it here."
|
||||
description="Install re-Agent on your server machine to see it here."
|
||||
>
|
||||
<template #action>
|
||||
<Button variant="primary" @click="router.push('/server')">Go to Server page</Button>
|
||||
|
||||
@@ -52,7 +52,7 @@ const tabItems = [
|
||||
function sourceLabel(source: string): string {
|
||||
switch (source) {
|
||||
case 'umod': return 'uMod'
|
||||
case 'corrosion_module': return 'Corrosion'
|
||||
case 'corrosion_module': return 'Catalyst'
|
||||
case 'manual': return 'Manual'
|
||||
default: return source
|
||||
}
|
||||
@@ -485,7 +485,7 @@ onMounted(() => {
|
||||
</Panel>
|
||||
|
||||
<Alert tone="info">
|
||||
The plugin will be registered in your plugin list immediately. Your host agent must be connected
|
||||
The plugin will be registered in your plugin list immediately. Your re-Agent must be connected
|
||||
for the file to be delivered to the game server. If the agent is offline, re-upload once it reconnects.
|
||||
</Alert>
|
||||
</div>
|
||||
|
||||
@@ -327,7 +327,7 @@ async function saveConfig() {
|
||||
|
||||
async function serverAction(action: 'start' | 'stop' | 'restart') {
|
||||
if (!currentInstance.value) {
|
||||
toast.error('No game instance to control — connect the host agent first')
|
||||
toast.error('No game instance to control — connect re-Agent first')
|
||||
return
|
||||
}
|
||||
actionLoading.value = action
|
||||
@@ -532,7 +532,7 @@ onMounted(async () => {
|
||||
v-if="!currentInstance"
|
||||
icon="server"
|
||||
title="No game instance connected"
|
||||
:description="'Install the host agent and add a ' + profile.label + ' instance to its config to manage it here.'"
|
||||
:description="'Install re-Agent and add a ' + profile.label + ' instance to its config to manage it here.'"
|
||||
/>
|
||||
|
||||
<template v-else>
|
||||
@@ -611,7 +611,7 @@ onMounted(async () => {
|
||||
</Panel>
|
||||
|
||||
<!-- Host agent -->
|
||||
<Panel title="Host agent" subtitle="Bare-metal server management binary">
|
||||
<Panel title="re-Agent" subtitle="Bare-metal server management binary">
|
||||
<template #actions>
|
||||
<Badge :tone="isAgentConnected ? 'online' : 'offline'" :dot="true" :pulse="isAgentConnected">
|
||||
{{ isAgentConnected ? 'Active' : 'Inactive' }}
|
||||
@@ -640,7 +640,7 @@ onMounted(async () => {
|
||||
<!-- Download -->
|
||||
<div class="sv__section-head">
|
||||
<Icon name="download" :size="14" />
|
||||
<span>Download host agent</span>
|
||||
<span>Download re-Agent</span>
|
||||
</div>
|
||||
<div class="sv__downloads sv__mb">
|
||||
<a
|
||||
@@ -683,7 +683,7 @@ onMounted(async () => {
|
||||
|
||||
<!-- Linux commands -->
|
||||
<div v-if="setupTab === 'linux'" class="sv__codeblock">
|
||||
<p class="sv__cmt"># Download the agent</p>
|
||||
<p class="sv__cmt"># Download re-Agent</p>
|
||||
<p>curl -LO https://cdn.corrosionmgmt.com/host-agent/latest/corrosion-host-agent-linux-amd64</p>
|
||||
<p>chmod +x corrosion-host-agent-linux-amd64</p>
|
||||
<p class="sv__cmt sv__mt"># Write /etc/corrosion/agent.toml (see config block below), then run:</p>
|
||||
@@ -694,7 +694,7 @@ onMounted(async () => {
|
||||
<!-- Windows commands -->
|
||||
<div v-if="setupTab === 'windows'" class="sv__codeblock">
|
||||
<p class="sv__cmt"># Requires PowerShell (not Command Prompt)</p>
|
||||
<p class="sv__cmt"># Download the agent</p>
|
||||
<p class="sv__cmt"># Download re-Agent</p>
|
||||
<p>Invoke-WebRequest -Uri <span class="sv__accent">"https://cdn.corrosionmgmt.com/host-agent/latest/corrosion-host-agent-windows-amd64.exe"</span> -OutFile <span class="sv__accent">"corrosion-host-agent-windows-amd64.exe"</span></p>
|
||||
<p class="sv__cmt sv__mt"># Write C:\ProgramData\Corrosion\agent.toml (see config block below), then run:</p>
|
||||
<p>New-Item -ItemType Directory -Force -Path <span class="sv__accent">"C:\ProgramData\Corrosion"</span></p>
|
||||
@@ -726,7 +726,7 @@ onMounted(async () => {
|
||||
<pre class="sv__pre">{{ agentTomlConfig }}</pre>
|
||||
</div>
|
||||
<Alert v-if="!agentCreds" tone="warn" class="sv__mt">
|
||||
Could not load credentials from server. Copy this config and replace the placeholders with values from your Corrosion dashboard settings.
|
||||
Could not load credentials from server. Copy this config and replace the placeholders with values from your Catalyst dashboard settings.
|
||||
</Alert>
|
||||
</Panel>
|
||||
|
||||
@@ -858,7 +858,7 @@ onMounted(async () => {
|
||||
<EmptyState
|
||||
icon="box"
|
||||
title="Docker-managed deployment"
|
||||
:description="profile.label + ' servers are managed via Docker Compose. Connect the host agent on your Docker host to enable lifecycle management.'"
|
||||
:description="profile.label + ' servers are managed via Docker Compose. Connect re-Agent on your Docker host to enable lifecycle management.'"
|
||||
>
|
||||
<template #action>
|
||||
<Badge tone="info">Docker · Compose</Badge>
|
||||
@@ -929,7 +929,7 @@ onMounted(async () => {
|
||||
<EmptyState
|
||||
icon="layers"
|
||||
:title="profile.label + ' mod management'"
|
||||
:description="profile.label + ' loads mods directly from Steam Workshop. Manage your mod list in server config — no Corrosion install step needed.'"
|
||||
:description="profile.label + ' loads mods directly from Steam Workshop. Manage your mod list in server config — no Catalyst install step needed.'"
|
||||
/>
|
||||
</Panel>
|
||||
|
||||
@@ -973,7 +973,7 @@ onMounted(async () => {
|
||||
<EmptyState
|
||||
icon="network"
|
||||
title="Cluster management coming soon"
|
||||
:description="'Connect a ' + profile.label + ' host to manage the main-client cluster from this panel. Cluster configuration requires the host agent.'"
|
||||
:description="'Connect a ' + profile.label + ' host to manage the main-client cluster from this panel. Cluster configuration requires re-Agent.'"
|
||||
/>
|
||||
</Panel>
|
||||
|
||||
@@ -986,7 +986,7 @@ onMounted(async () => {
|
||||
<EmptyState
|
||||
icon="map"
|
||||
title="Sietch management requires a connected Dune host"
|
||||
description="Connect the host agent on your Dune: Awakening Docker host to manage BattleGroups and Sietches from this panel."
|
||||
description="Connect re-Agent on your Dune: Awakening Docker host to manage BattleGroups and Sietches from this panel."
|
||||
/>
|
||||
</Panel>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user