Add AlphaPulse brand icon across the web app

Use a shared SVG combining an A mark with a market pulse line for the favicon, login page, and navigation. Preserve the existing theme and page layout.
This commit is contained in:
eezd committed 2026-10-26 21:15:23 +08:00
1 parent 9f5b3550fa
commit c1c52aa0b2
4 files changed
+9 -8

No files matched your search

+1
View File
@@ -3,6 +3,7 @@
<head> <head>
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<title>AlphaPulse</title> <title>AlphaPulse</title>
</head> </head>
<body> <body>
+5
View File
@@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" fill="none">
<rect width="64" height="64" rx="16" fill="#006194" />
<path fill="#fff" fill-rule="evenodd" d="M14 48 28 16h8l14 32h-9l-3-8H26l-3 8h-9Zm15-16h6l-3-8-3 8Z" clip-rule="evenodd" />
<path d="M10 37h12l6-6 7 11 6-7h13" stroke="#7dd3fc" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" />
</svg>

After

Width:  |  Height:  |  Size: 385 B

@@ -1,5 +1,5 @@
<script lang="ts" setup> <script lang="ts" setup>
import { SwitchButton, TrendCharts } from "@element-plus/icons-vue" import { SwitchButton } from "@element-plus/icons-vue"
import { useUserStore } from "@/pinia/stores/user" import { useUserStore } from "@/pinia/stores/user"
import { menuRoutes } from "@/router/routes" import { menuRoutes } from "@/router/routes"
@@ -16,9 +16,7 @@ async function logout() {
<div class="h-full flex flex-col"> <div class="h-full flex flex-col">
<header class="app-header h-auto flex shrink-0 flex-wrap items-center gap-x-3 gap-y-0 border-b border-b-slate-200 border-b-solid bg-white px-3 pt-2 shadow-sm lg:h-14 lg:flex-nowrap lg:gap-6 lg:px-6 lg:pt-0"> <header class="app-header h-auto flex shrink-0 flex-wrap items-center gap-x-3 gap-y-0 border-b border-b-slate-200 border-b-solid bg-white px-3 pt-2 shadow-sm lg:h-14 lg:flex-nowrap lg:gap-6 lg:px-6 lg:pt-0">
<div class="brand flex flex-1 shrink-0 items-center gap-2 text-base lg:flex-none lg:text-lg text-slate-900 font-bold"> <div class="brand flex flex-1 shrink-0 items-center gap-2 text-base lg:flex-none lg:text-lg text-slate-900 font-bold">
<el-icon :size="22" color="var(--el-color-primary)"> <img src="/favicon.svg" alt="" aria-hidden="true" width="24" height="24" class="shrink-0">
<TrendCharts />
</el-icon>
AlphaPulse AlphaPulse
</div> </div>
<nav class="app-nav order-4 h-10 min-w-0 flex flex-1 basis-full gap-5 overflow-x-auto text-sm lg:order-none lg:h-full lg:basis-auto lg:gap-6"> <nav class="app-nav order-4 h-10 min-w-0 flex flex-1 basis-full gap-5 overflow-x-auto text-sm lg:order-none lg:h-full lg:basis-auto lg:gap-6">
+1 -4
View File
@@ -1,7 +1,6 @@
<script lang="ts" setup> <script lang="ts" setup>
import type { FormInstance, FormRules } from "element-plus" import type { FormInstance, FormRules } from "element-plus"
import { getCaptchaApi, loginApi } from "@@/apis/auth" import { getCaptchaApi, loginApi } from "@@/apis/auth"
import { TrendCharts } from "@element-plus/icons-vue"
import axios, { CanceledError } from "axios" import axios, { CanceledError } from "axios"
import { useUserStore } from "@/pinia/stores/user" import { useUserStore } from "@/pinia/stores/user"
import { safeRedirect } from "@/router/guards" import { safeRedirect } from "@/router/guards"
@@ -96,9 +95,7 @@ async function submit() {
<el-card class="w-90" shadow="never" body-class="px-8 pb-8 pt-6"> <el-card class="w-90" shadow="never" body-class="px-8 pb-8 pt-6">
<div class="mb-6 text-center"> <div class="mb-6 text-center">
<div class="flex-center gap-2 text-2xl text-slate-900 font-bold"> <div class="flex-center gap-2 text-2xl text-slate-900 font-bold">
<el-icon :size="26" color="var(--el-color-primary)"> <img src="/favicon.svg" alt="" aria-hidden="true" width="32" height="32" class="shrink-0">
<TrendCharts />
</el-icon>
AlphaPulse AlphaPulse
</div> </div>
<div class="mt-1 text-xs text-slate-500"> <div class="mt-1 text-xs text-slate-500">