Compare commits

..

11 Commits

16 changed files with 1916 additions and 826 deletions

View File

@ -74,6 +74,7 @@
"lastmod",
"lazyload",
"linuxapi",
"longluo",
"loveness",
"luoli",
"luxon",

View File

@ -1,5 +1,5 @@
import mdx from '@astrojs/mdx';
import node from '@astrojs/node';
import zeabur from '@zeabur/astro-adapter/serverless';
import { uploader } from 'astro-uploader';
import { defineConfig, envField } from 'astro/config';
import rehypeExternalLinks from 'rehype-external-links';
@ -31,6 +31,7 @@ export default defineConfig({
// Artalk Comment
ARTALK_HOST: envField.string({ context: 'server', access: 'secret' }),
},
validateSecrets: true,
},
},
integrations: [
@ -46,9 +47,7 @@ export default defineConfig({
secretAccessKey: process.env.S3_SECRET_ACCESS_KEY as string,
}),
],
adapter: node({
mode: 'standalone',
}),
adapter: zeabur(),
markdown: {
gfm: true,
shikiConfig: {

View File

@ -186,7 +186,7 @@ const options: z.input<typeof Options> = {
server: 'https://comment.yufan.me',
size: 10,
avatar: {
mirror: 'https://weavatar.com/avatar',
mirror: 'https://gravatar.webp.se/avatar',
size: 120,
},
},

2543
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -41,41 +41,46 @@
]
},
"dependencies": {
"@astrojs/mdx": "^3.1.2",
"@astrojs/node": "^8.3.2",
"@astrojs/mdx": "^3.1.3",
"@astrojs/rss": "^4.0.7",
"astro": "^4.11.5",
"drizzle-orm": "^0.31.3",
"@zeabur/astro-adapter": "^1.0.6",
"astro": "^4.12.3",
"drizzle-orm": "^0.32.1",
"fuse.js": "^7.0.0",
"lodash": "^4.17.21",
"luxon": "^3.4.4",
"marked": "^13.0.2",
"marked": "^13.0.3",
"pg": "^8.12.0",
"qrcode-svg": "^1.1.0",
"ultrahtml": "^1.5.3"
},
"devDependencies": {
"@astrojs/check": "^0.8.0",
"@astrojs/check": "^0.8.3",
"@biomejs/biome": "^1.8.3",
"@napi-rs/canvas": "^0.1.53",
"@types/lodash": "^4.17.6",
"@types/lodash": "^4.17.7",
"@types/luxon": "^3.4.2",
"@types/node": "^20.14.10",
"@types/node": "^22.0.0",
"@types/pg": "^8.11.6",
"@types/qrcode-svg": "^1.1.4",
"@types/qrcode-svg": "^1.1.5",
"@types/unist": "^3.0.2",
"aplayer": "^1.10.1",
"astro-uploader": "^1.1.3",
"bootstrap": "^5.3.3",
"prettier": "^3.3.2",
"prettier-plugin-astro": "^0.14.0",
"patch-package": "^8.0.0",
"prettier": "^3.3.3",
"prettier-plugin-astro": "^0.14.1",
"prettier-plugin-astro-organize-imports": "^0.4.9",
"prettier-plugin-organize-imports": "^4.0.0",
"rehype-external-links": "^3.0.0",
"resize-sensor": "^0.0.6",
"rimraf": "^5.0.8",
"rimraf": "^6.0.1",
"sharp": "^0.33.4",
"typescript": "^5.5.3",
"typescript": "^5.5.4",
"unist-util-select": "^5.1.0"
},
"packageManager": "npm@10.8.2",
"engines": {
"node": "22.5.1"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

View File

@ -1,4 +0,0 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:recommended"]
}

View File

@ -151,7 +151,7 @@ if (typeof comments !== 'undefined' && comments !== null) {
const email = event.target.value;
if (email !== '' && email.includes('@')) {
// Replace the avatar after typing the email.
actions.avatar.safe({ email }).then(({ data, error }) => {
actions.avatar({ email }).then(({ data, error }) => {
if (error) {
return handleActionError(error);
}
@ -167,7 +167,7 @@ if (typeof comments !== 'undefined' && comments !== null) {
// Loading more comments from server.
if (event.target === comments.querySelector('#comments-next-button')) {
const { size, offset, key } = event.target.dataset;
const { data, error } = await actions.comments.safe({ offset: Number(offset), page_key: key });
const { data, error } = await actions.comments({ offset: Number(offset), page_key: key });
if (error) {
return handleActionError(error);
}
@ -223,7 +223,7 @@ if (typeof comments !== 'undefined' && comments !== null) {
}
request.rid = request.rid === undefined ? 0 : Number(request.rid);
const { data, error } = await actions.comment.safe(request);
const { data, error } = await actions.comment(request);
if (error) {
return handleActionError(error);
@ -279,7 +279,7 @@ const likeButton = document.querySelector('button.post-like');
const increaseLikes = (count, permalink) => {
count.textContent = Number.parseInt(count.textContent) + 1;
actions.like.safe({ action: 'increase', key: permalink }).then(({ data, error }) => {
actions.like({ action: 'increase', key: permalink }).then(({ data, error }) => {
if (error) {
return handleActionError(error);
}
@ -295,7 +295,7 @@ const decreaseLikes = (count, permalink) => {
return;
}
count.textContent = Number.parseInt(count.textContent) - 1;
actions.like.safe({ action: 'decrease', key: permalink, token }).then(({ data, error }) => {
actions.like({ action: 'decrease', key: permalink, token }).then(({ data, error }) => {
if (error) {
return handleActionError(error);
}

File diff suppressed because one or more lines are too long

View File

@ -4,7 +4,7 @@ import options from '@/options';
import { ARTALK_HOST } from 'astro:env/server';
import _ from 'lodash';
import { marked } from 'marked';
import * as querystring from 'node:querystring';
import querystring from 'node:querystring';
import { ELEMENT_NODE, transform, walk } from 'ultrahtml';
import sanitize from 'ultrahtml/transformers/sanitize';

View File

@ -61,3 +61,8 @@
homepage: https://blog.luoli.net
poster: /images/links/luoli.net.jpg
favicon: https://blog.luoli.net/usr/themes/MUltraMoe/images/favicon.png
- website: LongLuo's Life Notes
description: 每一天都是奇迹
homepage: https://www.longluo.me
poster: /images/links/longluo.me.jpg
favicon: https://www.longluo.me/assets/logo/favicon-32x32.png

View File

@ -33,3 +33,11 @@ published: true
无论过了多久,无论白天与黑夜,博客是永恒的长亭,任你来来去去,悲欢离合,它只在那里。不悲,不喜。
我说,我只想做个博客里面的守望者,我会陪你们一起,我们一起守望幸福,等待下一次遇见……
## 博客信息
1. 博客名称:且听书吟
2. 博客简介:诗与梦想的远方
3. 博客网址https://yufan.me
4. 博客 LOGOhttps://yufan.me/logo.svg
5. 博客 Bannerhttps://github.com/syhily/yufan.me/blob/astro/docs/poster/github-poster.png

View File

@ -16,7 +16,7 @@ summary: 还未从忙碌中回神,八月就这么不知不觉地过去,周
——题记
今年的八月,没有去年那般湿热,不知是不是因为毕业的日子早已离我远去,印象中的毕业季总是在热火朝天的季节里,热得烦躁不堪却也要坚持穿上累赘的学士服四处拍照。就和初到北京时住的地下室一样,湿漉漉的地板墙壁,湿漉漉的被单床铺,像是初面职场时内心焦急的大汗淋漓。
今年的八月,没有去年那般湿热,不知是不是因为毕业的日子早已离我远去,印象中的毕业季总是在热火朝天的季节里,热得烦躁不堪却也要坚持穿上累赘的学士服四处拍照。就和初到北京时住的地下室一样,湿漉漉的地板墙壁,湿漉漉的被单床铺,像是初面职场时内心焦急的大汗淋漓。
那时的我面对着陌生的职场从来没接触的知识和技能内心焦躁不安并自我怀疑。那样烦躁的日子里睡前唯一能做的事就是强迫自己阅读几页《Java 编程思想》,每多掌握一点知识的时候,心中的焦虑便会被抚平一些。后来习惯了在公司通宵加班,大多时候,其实都是在看书,看设计模式,看关系数据库,看 NoSQL ,看并发编程……

View File

@ -270,9 +270,9 @@ API 的所有服务请求域名是相同的区别在于Request Path等。请
## 3.3 常见框架
1. Kong[https://github.com/Mashape/kong](https://github.com/Mashape/kong)
2. Zuul[https://github.com/Netflix/zuul](https://github.com/Netflix/zuul)
3. ROP[https://github.com/itstamen/rop](https://github.com/itstamen/rop)
1. Kong: [https://github.com/Mashape/kong](https://github.com/Mashape/kong)
2. Zuul: [https://github.com/Netflix/zuul](https://github.com/Netflix/zuul)
3. ROP: [https://github.com/itstamen/rop](https://github.com/itstamen/rop)
4. Resty: [https://github.com/Dreampie/Resty](https://github.com/Dreampie/Resty)
# 四、优劣

View File

@ -19,8 +19,6 @@ github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3k
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
golang.org/x/image v0.0.0-20191009234506-e7c1f5e7dbb8/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
golang.org/x/image v0.17.0 h1:nTRVVdajgB8zCMZVsViyzhnMKPwYeroEERRC64JuLco=
golang.org/x/image v0.17.0/go.mod h1:4yyo5vMFQjVjUcVk4jEQcU9MGy/rulF5WvUILseCM2E=
golang.org/x/image v0.18.0 h1:jGzIakQa/ZXI1I0Fxvaa9W7yP25TqT6cHIHn+6CqvSQ=
golang.org/x/image v0.18.0/go.mod h1:4yyo5vMFQjVjUcVk4jEQcU9MGy/rulF5WvUILseCM2E=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=