-
Notifications
You must be signed in to change notification settings - Fork 0
/
blog.config.ts
87 lines (76 loc) · 2.47 KB
/
blog.config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
import type { NoteBackgroundProps } from "~/components/layout/NoteBackground"
import type { ContactPlatformType } from "~/core/contact"
import { getAuthorContactHref } from "~/core/contact"
const contacts: Readonly<
{
[key in Exclude<ContactPlatformType, "email">]?: string
} & {
email: string // ✅ email for RSS
}
> = {
email: getAuthorContactHref("email", "your_email"),
github: getAuthorContactHref("github", "github_id"),
youtube: getAuthorContactHref("youtube", "youtube_id"),
facebook: getAuthorContactHref("facebook", "facebook_id"),
linkedin: getAuthorContactHref("linkedin", "linkedin_id"),
twitter: getAuthorContactHref("twitter", "twitter_id"),
}
const author = {
name: "your name",
introduce: "Introduce yourself",
faviconUrl: "/favicon.ico",
bannerImageUrl: "/banner.png",
contacts,
} as const
const blog = {
url: "https:///your.deploy.url",
siteName: "your site name",
subtitle: "your site subtitle",
copyright: `${
author.name
}© All rights reserved ${new Date().getFullYear()}.`,
language: "ko",
googleAnalyticsID: "DISABLED", // default to "DISABLED"
} as const
const config = {
blogContentsDirectoryName: "blog", // blog contents directory name
useKatex: false, // katex option
postPerCategoryPage: 8,
numberOfLatestPost: 4,
numberOfMainPageCategory: 5,
themeColor: "#73d1d7",
postControllerText: {
first: (category: string) => `Return to ${category}`, // first post ➡️ no prev post, so replace with your text
last: (category: string) => `Last contents of ${category}`, // last post ➡️ no next post, so replace with your text
},
navigationMenu: [
{
name: "Home",
path: "/",
},
{
name: "Category",
path: "/category",
},
{
name: "Profile",
path: "/profile",
},
],
noteBackgroundStyle: {
rectWidth: 300,
rectHeight: 200,
outerRectStrokeWidth: 1.5,
rectStrokeWidth: 1,
outerRectStrokeLight: "stroke-gray-300",
outerRectStrokeDark: "dark:stroke-neutral-700",
rectStrokeDark: "dark:stroke-teal-700/50",
bgDark: "dark:bg-neutral-900",
} satisfies NoteBackgroundProps,
author,
...blog,
} as const
export type BlogInfoType = typeof blog
export type AuthorInfoType = typeof author
export type ConfigType = typeof config
export { config }