forked from Reisa/Reisaye
网站和推流制作完成
This commit is contained in:
17
EyeVue/src/config/font.ts
Normal file
17
EyeVue/src/config/font.ts
Normal file
@@ -0,0 +1,17 @@
|
||||
interface FontConfig {
|
||||
enabled: boolean;
|
||||
name: string;
|
||||
url: string;
|
||||
preload?: boolean;
|
||||
display?: "auto" | "block" | "swap" | "fallback" | "optional";
|
||||
weights?: string;
|
||||
}
|
||||
|
||||
export const fontConfig: FontConfig = {
|
||||
enabled: true,
|
||||
name: "LXWK",
|
||||
url: "https://cdn.jsdmirror.com/gh/acanyo/mmm.sd@master/assets/font/lxwk.woff2",
|
||||
preload: true,
|
||||
display: "swap",
|
||||
weights: "100 900",
|
||||
};
|
||||
39
EyeVue/src/config/footer.ts
Normal file
39
EyeVue/src/config/footer.ts
Normal file
@@ -0,0 +1,39 @@
|
||||
interface FooterLink {
|
||||
text: string;
|
||||
to?: string; // 内部路由
|
||||
href?: string; // 外部链接
|
||||
target?: string;
|
||||
}
|
||||
|
||||
interface FooterConfig {
|
||||
links: FooterLink[];
|
||||
provider: {
|
||||
name: string;
|
||||
link: string;
|
||||
logo: string;
|
||||
text: string;
|
||||
};
|
||||
}
|
||||
|
||||
export const footerConfig: FooterConfig = {
|
||||
links: [
|
||||
|
||||
|
||||
{
|
||||
text: "博客",
|
||||
href: "https://www.godserver.cn",
|
||||
target: "_blank",
|
||||
},
|
||||
{
|
||||
text: "GitHub",
|
||||
href: "https://github.com/Spaso1",
|
||||
target: "_blank",
|
||||
},
|
||||
],
|
||||
provider: {
|
||||
name: "Aliyun",
|
||||
link: "https://www.aliyun.com/",
|
||||
logo: "https://avatars.githubusercontent.com/u/172407636?v=4",
|
||||
text: "提供 CDN 加速 / 云存储服务",
|
||||
},
|
||||
};
|
||||
46
EyeVue/src/config/index.ts
Normal file
46
EyeVue/src/config/index.ts
Normal file
@@ -0,0 +1,46 @@
|
||||
import { siteConfig } from "./site";
|
||||
|
||||
// 导出所有配置
|
||||
export { siteConfig };
|
||||
|
||||
// 合并基础配置
|
||||
export const config = {
|
||||
...siteConfig,
|
||||
siteUrl: "https://www.godserver.cn", // 默认值
|
||||
};
|
||||
|
||||
// 生成 sitemap.xml 内容
|
||||
export const generateSitemap = (
|
||||
siteUrl: string,
|
||||
) => `<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
<url>
|
||||
<loc>${siteUrl}/</loc>
|
||||
<lastmod>2024-03-21</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>1.0</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>${siteUrl}/blog</loc>
|
||||
<lastmod>2024-03-21</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>${siteUrl}/skills</loc>
|
||||
<lastmod>2024-03-21</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>${siteUrl}/contact</loc>
|
||||
<lastmod>2024-03-21</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.7</priority>
|
||||
</url>
|
||||
</urlset>`;
|
||||
|
||||
// 生成 robots.txt 内容
|
||||
export const generateRobots = (siteUrl: string) => `User-agent: *
|
||||
Allow: /
|
||||
Sitemap: ${siteUrl}/sitemap.xml`;
|
||||
11
EyeVue/src/config/navigation.ts
Normal file
11
EyeVue/src/config/navigation.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
export interface Tab {
|
||||
id: string;
|
||||
label: string;
|
||||
icon: string;
|
||||
}
|
||||
|
||||
export const tabs: Tab[] = [
|
||||
{ id: "projects", label: "项目展示", icon: "🎨" },
|
||||
{ id: "tools", label: "在线工具", icon: "🛠" },
|
||||
{ id: "bookmarks", label: "网址导航", icon: "🔖" },
|
||||
];
|
||||
53
EyeVue/src/config/notice.ts
Normal file
53
EyeVue/src/config/notice.ts
Normal file
@@ -0,0 +1,53 @@
|
||||
import type { NoticeButton, NoticeConfig } from "../types/notice";
|
||||
|
||||
interface ExtendedNoticeButton extends NoticeButton {
|
||||
type: "primary" | "secondary" | "danger";
|
||||
}
|
||||
|
||||
interface ExtendedNoticeConfig extends NoticeConfig {
|
||||
enabled: boolean;
|
||||
showFireworks: boolean;
|
||||
defaultShowAfter?: number | "refresh" | null;
|
||||
buttons: ExtendedNoticeButton[];
|
||||
}
|
||||
|
||||
export const noticeConfig: ExtendedNoticeConfig = {
|
||||
id: "site_notice_v1",
|
||||
enabled: true,
|
||||
showFireworks: true,
|
||||
title: "网站公告",
|
||||
content: `
|
||||
<div class="text-center">
|
||||
<p class="text-lg font-medium text-gray-900 dark:text-gray-100 mb-4">
|
||||
🎉 网站改版升级公告
|
||||
</p>
|
||||
<div class="text-gray-600 dark:text-gray-400 space-y-2">
|
||||
<p>网站已完成改版升级,新增以下功能:</p>
|
||||
<ul class="list-disc list-inside">
|
||||
<li>全新的深色模式支持</li>
|
||||
<li>性能优化与体验提升</li>
|
||||
<li>更多实用工具正在开发中</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
`,
|
||||
width: "500px",
|
||||
maskClosable: true,
|
||||
showClose: true,
|
||||
defaultShowAfter: null,
|
||||
buttons: [
|
||||
{
|
||||
text: "稍后查看",
|
||||
type: "secondary",
|
||||
action: "close",
|
||||
showAfter: "refresh",
|
||||
},
|
||||
{
|
||||
text: "立即体验",
|
||||
type: "primary",
|
||||
action: "navigate",
|
||||
to: "/projects",
|
||||
showAfter: 3 * 60 * 60 * 1000,
|
||||
},
|
||||
],
|
||||
};
|
||||
41
EyeVue/src/config/projects.ts
Normal file
41
EyeVue/src/config/projects.ts
Normal file
@@ -0,0 +1,41 @@
|
||||
export interface Project {
|
||||
id: number;
|
||||
title: string;
|
||||
description: string;
|
||||
tags: string[];
|
||||
image: string;
|
||||
link?: string;
|
||||
status: "completed" | "developing" | "planning";
|
||||
}
|
||||
|
||||
export const projects: Project[] = [
|
||||
{
|
||||
id: 2,
|
||||
title: "FindMaimaiUltra",
|
||||
description:
|
||||
"全新重构版本 Powered By Reisa",
|
||||
tags: ["技术分享", "Blog", "Markdown","舞萌DX","中二节奏","B50","查分器","旅行"],
|
||||
image: "https://picsum.photos/800/600?random=3",
|
||||
link: "https://github.com/Spaso1/FindMaimaiDX_Phone",
|
||||
status: "completed",
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
title: "EasyTop",
|
||||
description: "服务状态监控页面,实时监控各项服务的运行状态。",
|
||||
tags: ["监控", "服务状态", "实时数据"],
|
||||
image: "https://picsum.photos/800/600?random=4",
|
||||
link: "https://github.com/Spaso1/EasyTop",
|
||||
status: "completed",
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
title: "AsTrip",
|
||||
description:
|
||||
"旅行规划软件",
|
||||
tags: ["数据分析", "统计", "开源","旅行"],
|
||||
image: "https://picsum.photos/800/600?random=5",
|
||||
link: "https://github.com/Spaso1/Astrip",
|
||||
status: "completed",
|
||||
},
|
||||
];
|
||||
7
EyeVue/src/config/rss.ts
Normal file
7
EyeVue/src/config/rss.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
interface RssConfig {
|
||||
url: string;
|
||||
}
|
||||
|
||||
export const rssConfig: RssConfig = {
|
||||
url: "https://www.godserver.cn/rss.xml", // 直接使用完整 URL
|
||||
};
|
||||
20
EyeVue/src/config/site-info.ts
Normal file
20
EyeVue/src/config/site-info.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
interface SiteInfo {
|
||||
enabled: boolean;
|
||||
text: string;
|
||||
link: string;
|
||||
position?: "top" | "bottom";
|
||||
theme?: "dark" | "light";
|
||||
style?: string;
|
||||
linkStyle?: string;
|
||||
version?: string;
|
||||
}
|
||||
|
||||
export const siteInfo: SiteInfo = {
|
||||
enabled: true,
|
||||
text: "一个使用 Vue 3 + TypeScript + Vite 构建的现代化个人主页,具有博客文章展示、项目展示、联系表单等功能。",
|
||||
version: "V.2.3",
|
||||
link: "https://github.com/Spaso1/ReisaPage",
|
||||
position: "bottom",
|
||||
theme: "dark",
|
||||
style: "position: fixed; bottom: 0; left: 0; width: 100%; z-index: 1000;",
|
||||
};
|
||||
39
EyeVue/src/config/site.ts
Normal file
39
EyeVue/src/config/site.ts
Normal file
@@ -0,0 +1,39 @@
|
||||
export const siteConfig = {
|
||||
// 基本信息
|
||||
name: "Powered by Reisa", // 作者名称
|
||||
title: "FindMaimaiDX开发者 学生", // 职位头衔
|
||||
siteName: "ReisaSpasol | MaimaiDX", // 网站标题
|
||||
siteDescription:
|
||||
"专注于Java、Spring Boot、微服务等后端技术开发的个人作品集网站", // 网站描述
|
||||
author: "ReisaSpasol", // 作者信息
|
||||
|
||||
// 图片资源配置
|
||||
images: {
|
||||
logo: "./assets/icon.png", // 网站Logo
|
||||
icon: "./assets/icon.png", // 网站图标
|
||||
avatar: "./assets/icon.png", // 个人头像
|
||||
ogImage: "./assets/icon.png", // 社交分享图片
|
||||
},
|
||||
|
||||
// 个性化配置
|
||||
slogan: "Use FindMaimai!", // 个性签名
|
||||
skills: ["Java", "Spring Boot", "MySQL", "Vue", "Docker", "Git","FindMaimai"], // 技能标签
|
||||
|
||||
// SEO 相关配置
|
||||
language: "zh-CN", // 网站语言
|
||||
themeColor: "#4F46E5", // 主题色
|
||||
twitterHandle: "@Spasolmodlic", // Twitter账号
|
||||
githubHandle: "Spaso1", // GitHub账号
|
||||
|
||||
// Schema.org 结构化数据
|
||||
organization: {
|
||||
name: "Reisa", // 组织名称
|
||||
logo: "./assets/icon.png", // 组织Logo
|
||||
},
|
||||
|
||||
// 社交媒体链接
|
||||
social: {
|
||||
github: "https://github.com/acanyo", // GitHub主页
|
||||
email: "astralpath@163.com", // 联系邮箱
|
||||
},
|
||||
};
|
||||
33
EyeVue/src/config/tools.ts
Normal file
33
EyeVue/src/config/tools.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
import JsonFormatterView from "@/views/tools/JsonFormatterView.vue";
|
||||
import TimestampView from "@/views/tools/TimestampView.vue";
|
||||
|
||||
export interface Tool {
|
||||
id: number;
|
||||
title: string;
|
||||
description: string;
|
||||
tags: string[];
|
||||
image: string;
|
||||
component: any;
|
||||
status: "completed" | "developing" | "planning";
|
||||
}
|
||||
|
||||
export const tools: Tool[] = [
|
||||
{
|
||||
id: 1,
|
||||
title: "JSON 格式化工具",
|
||||
description: "在线 JSON 格式化工具,支持压缩、美化、验证和转换等功能",
|
||||
tags: ["JSON", "格式化", "在线工具"],
|
||||
image: "https://picsum.photos/800/600?random=1",
|
||||
component: JsonFormatterView,
|
||||
status: "completed",
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
title: "时间戳转换器",
|
||||
description: "时间戳与日期格式互转工具,支持多种格式和时区设置",
|
||||
tags: ["时间戳", "日期转换", "时区"],
|
||||
image: "https://picsum.photos/800/600?random=2",
|
||||
component: TimestampView,
|
||||
status: "completed",
|
||||
},
|
||||
];
|
||||
Reference in New Issue
Block a user