Compare commits

..

28 Commits

Author SHA1 Message Date
e8c81870d6 update 2024-11-19 00:44:18 +08:00
7176a420a3 update 2024-07-30 14:18:33 +08:00
ef3e9b2106 update
All checks were successful
continuous-integration/drone/push Build is passing
2024-05-20 22:01:30 +08:00
806dce72fd add some new text
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-11 01:14:14 +08:00
70773342f7 update
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-26 22:13:12 +08:00
3d91194116 update
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-26 21:55:56 +08:00
b4b5bebaf4 update
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-19 08:47:52 +08:00
04365b0b24 update
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-13 04:25:14 +08:00
f4d71d436c update
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-13 04:18:45 +08:00
9f4599eb75 Update subscription
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-13 03:36:49 +08:00
2248c5519b 更新 index.html
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-07 23:02:25 +00:00
2d491cc71c update
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-08 07:53:07 +09:00
5bced2a146 update
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-08 07:49:36 +09:00
22a52b0e17 update
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-08 07:42:58 +09:00
12ab17e241 update
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is passing
2024-02-08 05:20:44 +09:00
754094644e update
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is failing
2023-03-21 21:42:44 +08:00
fe2f67515b update 2023-03-21 21:37:23 +08:00
c05ef4a722 Update
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 13:28:44 +08:00
be4520cebd Update
Some checks failed
continuous-integration/drone/push Build is failing
2022-05-03 13:21:55 +08:00
bd1d2749ad Update
Some checks reported errors
continuous-integration/drone/push Build encountered an error
continuous-integration/drone Build is failing
2022-05-03 13:14:12 +08:00
fab62a506d Update
Some checks failed
continuous-integration/drone/push Build is failing
2022-05-03 12:43:30 +08:00
d68a7844c3 Update
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is passing
2022-05-02 22:52:08 +08:00
0835169c9b Update
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-02 17:23:18 +08:00
2895512684 Update
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-02 17:19:18 +08:00
52f2237d12 Update
Some checks failed
continuous-integration/drone/push Build is failing
2022-05-02 17:16:10 +08:00
4b02f32392 Update 2022-05-02 16:52:52 +08:00
0e3084b275 Update
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-02 01:03:45 +08:00
cba791e5c8 Update
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-01 14:22:55 +08:00
25 changed files with 1034 additions and 824 deletions

1
.dockerignore Normal file
View File

@ -0,0 +1 @@
node_modules

View File

@ -3,30 +3,40 @@ type: docker
name: build-and-deploy
steps:
- name: restore-cache
image: drillster/drone-volume-cache
settings:
restore: true
mount:
- ./node_modules
volumes:
- name: cache
path: /cache
- name: build
image: node:lts-bullseye
commands:
- apt-get update -y && apt-get install git -y
- yarn && yarn build
- name: upload
image: plugins/s3
- apt-get update -y && apt-get install git -y
- yarn && yarn build
- name: rebuild-cache
image: drillster/drone-volume-cache
settings:
bucket: home-app
region: us-ashburn-02
acl: public-read
endpoint: https://storage.186526.xyz
access_key:
from_secret: s3_access_key
secret_key:
from_secret: s3_secret_key
source: dist/**/*
target: /dist
path_style: true
- name: send telegram notification
rebuild: true
mount:
- ./node_modules
volumes:
- name: cache
path: /cache
- name: notification
image: appleboy/drone-telegram
settings:
token:
token:
from_secret: telegram_bot_token
to: real186526
to: real186526
volumes:
- name: cache
host:
path: /tmp/drone/cache

3
Dockerfile Normal file
View File

@ -0,0 +1,3 @@
FROM nginx:alpine
COPY dist /usr/share/nginx/html
EXPOSE 80

97
deploy.yaml Normal file
View File

@ -0,0 +1,97 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: home-app
namespace: dn42
labels:
app: home-app
dn42: "yes"
spec:
replicas: 5
selector:
matchLabels:
app: home-app
template:
metadata:
labels:
app: home-app
spec:
# affinity:
# nodeAffinity:
# requiredDuringSchedulingIgnoredDuringExecution:
# nodeSelectorTerms:
# - matchExpressions:
# - key: edge/region
# operator: In
# values:
# - eu
containers:
- name: "home-app"
image: "registry.186526.xyz/home-app:latest"
imagePullPolicy: Always
resources:
limits:
memory: 64Mi
cpu: 250m
ports:
- name: web
containerPort: 80
protocol: TCP
env:
- name: REGION
valueFrom:
fieldRef:
fieldPath: spec.nodeName
---
apiVersion: v1
kind: Service
metadata:
name: "home-app"
namespace: dn42
spec:
type: ClusterIP
ports:
- port: 80
name: web
selector:
app: "home-app"
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: "home-app-ingress"
namespace: dn42
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web,websecure
traefik.ingress.kubernetes.io/router.middlewares: edge-network-middleware@file,compress@file
kubernetes.io/ingress.class: traefik
cert-manager.io/cluster-issuer: dn42-acme
spec:
tls:
- secretName: home-app-cert
hosts:
- home-app.186526.dn42
- home.186526.dn42
rules:
- host: home-app.186526.dn42
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: "home-app"
port:
number: 80
- host: home.186526.dn42
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: "home-app"
port:
number: 80

View File

@ -1,263 +1,257 @@
<!DOCTYPE html>
<html>
<head>
<head>
<meta charset="utf-8" />
<meta
name="viewport"
content="width=device-width,initial-scale=1,maximum-scale=1"
/>
<meta name="renderer" content="webkit" />
<meta name="force-rendering" content="webkit" />
<meta name="backend-renderer" content="LitePage" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link rel="preconnect" href="https://i.186526.xyz" />
<link rel="preconnect" href="https://storage.186526.xyz" />
<link rel="icon" href="https://i.186526.xyz/avatar" />
<link
href="https://fonts.googleapis.com/css2?family=Google+Sans:wght@500&amp;family=Fira+Mono&amp;family=Ubuntu&amp;family=Roboto&amp;display=swap"
rel="stylesheet"
/>
<title>It's me, 186526!</title>
<link
href="https://fonts.googleapis.com/icon?family=Material+Icons+Outlined"
rel="stylesheet"
/>
<link
href="https://fonts.googleapis.com/css2?family=Noto+Sans+SC&amp;display=swap"
rel="stylesheet"
/>
<script type="module" src="./src/main.ts"></script>
<script
async=""
src="https://www.googletagmanager.com/gtag/js?id=G-PVVC00CJ26"
></script>
<html lang="zh">
<meta name="description" content="It's me, 186526! | 186526 的自留地" />
<meta property="og:type" content="website" />
<meta property="og:title" content="It's me, 186526! | 186526.xyz" />
<meta
name="og:description"
content="It's me, 186526! | 186526 的自留地"
/>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=5" />
<meta name="renderer" content="webkit" />
<meta name="force-rendering" content="webkit" />
<meta name="backend-renderer" content="Vite" />
<meta name="theme-color" content="#00bdff" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link rel="preconnect" href="https://i.186526.xyz" />
<link rel="preconnect" href="https://storage.186526.xyz" />
<link rel="apple-touch-icon" href="./avatar.png">
<link rel="icon" href="./avatar.png" />
<link
href="https://fonts.googleapis.com/css2?family=Google+Sans:wght@500&amp;family=Fira+Mono&amp;family=Ubuntu&amp;family=Roboto&amp;display=swap"
rel="stylesheet" />
<title>It's me, 186526!</title>
<link href="https://fonts.googleapis.com/icon?family=Material+Icons+Outlined" rel="stylesheet" />
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+SC&amp;display=swap" rel="stylesheet" />
<script type="module" src="./src/main.ts"></script>
<link rel="manifest" href="./manifest.json" />
<script async src="https://www.googletagmanager.com/gtag/js?id=G-PVVC00CJ26"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
<script>
(function () {
function getBroswer() {
var sys = {};
var ua = navigator.userAgent.toLowerCase();
var s;
(s = ua.match(/edge\/([\d.]+)/))
? (sys.edge = s[1])
: (s = ua.match(/rv:([\d.]+)\) like gecko/))
? (sys.ie = s[1])
: (s = ua.match(/msie ([\d.]+)/))
? (sys.ie = s[1])
: (s = ua.match(/firefox\/([\d.]+)/))
gtag('config', 'G-PVVC00CJ26');
</script>
<script defer src="https://analytics.186526.net/script.js" data-website-id="5a54816d-378c-467c-834a-f7d665f72b9d"></script>
<meta name="description" content="It's me, 186526! | real186526 的自留地">
<!-- Facebook Meta Tags -->
<meta property="og:url" content="https://186526.xyz">
<meta property="og:type" content="website">
<meta property="og:title" content="It's me, 186526! | 186526.xyz">
<meta property="og:description" content="It's me, 186526! | real186526 的自留地">
<meta property="og:image" content="./assets/og.png">
<!-- Twitter Meta Tags -->
<meta name="twitter:card" content="summary_large_image">
<meta property="twitter:domain" content="186526.xyz">
<meta property="twitter:url" content="https://186526.xyz">
<meta name="twitter:title" content="It's me, 186526! | 186526.xyz">
<meta name="twitter:description" content="It's me, 186526! | real186526 的自留地">
<meta name="twitter:image" content="./assets/og.png">
<link rel="manifest" href="./manifest.json" />
</head>
<body>
<app>
<background>
<p>Pixiv ID @ 78361641</p>
</background>
<header>
<img src="avatar.png" alt="avatar" width="100px" height="100px" />
<div>
<h1>
<a href="https://186526.xyz" title="186526.xyz - It's me, 186526!">It's me, 186526!</a>
</h1>
<p>
<description>一个啥都不会的屑</description>
</p>
</div>
</header>
<contents>
<group id="channel">
<card id="blog">
<a href="https://blog.186526.xyz/?utm_source=home" aria-label="goto 186526's Blog" alt="186526's Blog"><img alt="186526's Blog"
src="assets/hexo.svg" /></a>
</card>
<card id="status">
<a href="https://status.186526.eu.org/" aria-label="goto 186526's Status" alt="186526's Status"><img
alt="186526's Status" src="assets/uptimerobot.ico" /></a>
</card>
<card id="dn42">
<a href="https://186526.net" aria-label="goto 186526 Network" alt="186526 Network"><img alt="186526 Network"
src="assets/dn42.svg" /></a>
</card>
<card id="gitea">
<a href="https://git.186526.xyz" aria-label="goto 186526's Gitea" alt="186526's Gitea"><img
alt="186526's Gitea" src="assets/gitea.svg" /></a>
</card>
<card id="github">
<a href="https://github.com/186526" aria-label="goto 186526 @ Github" alt="Github"><img alt="Github"
src="assets/github.svg" /></a>
</card>
<card id="telegram">
<a href="https://t.me/real186526" aria-label="goto 186526 @ Telegram" alt="Telegram"><img alt="Telegram"
src="assets/telegram.svg" /></a>
</card>
<card id="email">
<a href="mailto:i@186526.xyz" aria-label="send email to i@186526.xyz" alt="Email">
<icon>mail</icon>
</a>
</card>
</group>
<group id="friend">
<card>
<a href="https://zikin.org/" aria-label="goto Zikin's Blog" alt="Zikin的独立博客 - 青春大概如你所说" target="_blank"
rel="noopener"><img alt="Zikin的独立博客 - 青春大概如你所说"
src="https://cdn.jsdelivr.net/gh/ZikinCDN/img@latest/2021/logo.jpg" /></a>
</card>
<card>
<a href="https://blog.skrshadow.cn/" aria-label="goto Skrshadow's Blog" alt="Skrshadow - 是红雨, 斯哈斯哈"
target="_blank" rel="noopener"><img alt="Skrshadow - 是红雨, 斯哈斯哈"
src="https://sdn.geekzu.org/avatar/e2027c37ef15b736cf3ee8b7803216c4" /></a>
</card>
<card>
<a href="https://radium-bit.github.io/" aria-label="goto Radium-bit's Blog" alt="Radium-bit" target="_blank"
rel="noopener"><img alt="Radium-bit"
src="https://cdn.jsdelivr.net/gh/radium-bit/res@latest/avatar.webp" /></a>
</card>
<card>
<a href="https://blog.maxelbk.eu.org" aria-label="goto Maxel Black's Blog" target="_blank" rel="noopener"
alt="Maxel Black - Code & write what we want."><img alt="Maxel Black - Code & write what we want."
src="https://blog.maxelbk.eu.org/r/maxel.jpg" /></a>
</card>
</group>
<group id="footer">
<a alt="Github followers" href="https://github.com/186526" target="_blank" rel="noopener"><img
alt="Github followers" src="https://186526.xyz/shields.io/github/followers/186526
" /></a>
<br>
<div>
<a alt="PGP Key" href="https://i.186526.xyz/pgp_keys.asc" target="_blank" rel="noopener">
<img alt="PGP Key" src="https://186526.xyz/shields.io/keybase/pgp/186526" />
</a>
<a alt="Moe ICP 20218600" href="https://icp.gov.moe/?keyword=20218600" target="_blank" rel="noopener"><img
alt="Moe ICP 20218600"
src="https://186526.xyz/shields.io/badge/%E8%90%8CICP%E5%A4%87-20218600-blue" /></a>
<a alt="186526.xyz Uptime" href="https://status.186526.eu.org/" target="_blank" rel="noopener"><img
alt="186526.xyz Uptime"
src="https://186526.xyz/shields.io/uptimerobot/ratio/m786767672-6913a353d708838f195d30d8" /></a>
<a alt="CI Status" href="https://ci.186526.xyz/186526/home-app" target="_blank" rel="noopener">
<img alt="CI Status" src="https://ci.186526.xyz/api/badges/186526/home-app/status.svg" />
</a>
</div>
<p>
Build on <code>"unknown"</code>.
<br>
Powered by Vite & TypeScript.
<br>
Made with 💖 by <a href="https://186526.xyz" target="_blank" rel="noopener">real186526</a>.
</p>
<p>Copyright © 2019 - Now 186526.xyz. All rights Reserved.</p>
</group>
</contents>
</app>
</body>
<none id="description-list">
<p>Less code, more bug.</p>
<p>Be simple, be silly.</p>
<p>Keep it simple, stupid</p>
<p>Arknights player</p>
<p>Talk is cheap, show me the code.</p>
<p>24 岁, 是学生</p>
<p>一天 25 小时绝赞配网中...</p>
<p>AS200536 / AS47778 / AS30581 绝赞运营中...</p>
<p>大陆北方网友</p>
<p>Location: localhost</p>
<p>Linux user ✗ <br> KVM user ✓</p>
<p>世界一级<br>拖延症证书持有者</p>
<p>想拥有强大的自制力</p>
<p>想做好自己</p>
<p>什么都不需要</p>
<p>不愿做傻事</p>
<p>好的作品中仿佛栖息着神明。</p>
<p>即便到了现在,对我而言,你也仍是和神明最接近的存在。</p>
<p>请不要忘记我独身一人的盛装游行。</p>
<p>另一个世界一定有着摇滚乐在播放,不流行赞歌什么的,因为神明也并不存在。</p>
<p>wowaka晚安。</p>
<p>麦门!</p>
<p>交错于虚拟与现实之间</p>
<p>关注 186 谢谢喵</p>
<p>拿不拿我真的好喜欢你啊,为了你我要听一百遍白ゆき</p>
<p>suis我真的好喜欢你啊为了你我要听一百遍八月、某、月明</p>
<p>关注派兹 (<a href="https://blw.moe/" target="_blank" rel="noopener">blw.moe</a>) 谢谢喵</p>
<p>「君の旅した街を歩く 訳もないのに口を出てく」<br>“行于你曾旅行的街道 话语毫无理由脱口而出”</p>
<p>「戻らない後悔の全部が美しいって」<br>“追悔莫及之物皆美不胜收”</p>
<p>「花惑う夏を待つ僕に差す月明かり」<br>“静待乱花迷醉之夏,皎洁月光照耀此身”</p>
<p>「幸せの色は準透明 なら見えない方が良かった」<br>“幸福的颜色是准透明 这样的话看不见的话该有多好”</p>
<p>「愛で世界が変わるもんか 淋しいなど人に言えるもんか」<br>“爱哪能改变世界 寂寞等等哪能说给人听”</p>
<p>「人生はどうにも妥協で出来てる」<br>“人生无可避免是由妥协堆积而成”</p>
<p>「心も運命もラブソングも人生も信じない」<br>“不论心灵或命运或情歌或人生皆不可信”</p>
<p>「君の人生は月明かりだ 有りがちだなんて言わせるものか」<br>“你的人生好似朗朗月光 岂能让他人指手画脚什么‘随处可见’”</p>
<p>「長い夜の終わりを信じながら」<br>“仍信长夜终破晓”</p>
<p>「人生全部が馬鹿みたいなのに」<br>“人生什么的全部明明愚蠢至极”</p>
<p>「牡丹は散っても花だ 夏が去っても追慕は切だ」<br>“牡丹落尽亦是花,夏去秋来思愈切。”</p>
<p>「きっと、人生最後の日も愛をうたうのだろう」<br>“我一定也会在人生最后的日子讴歌着爱”</p>
<p>「もうちょっとだけ貴方を探せたら もう一歩だけ歩いてみれるかな」<br>“如果再稍稍去寻找一下你的话,我就能再向前踏出一步了吧”</p>
<p>空中散步与四拍子</p>
<p>人生、二十七で死ねるならロックンロールは僕を救った</p>
</none>
<script>
(function () {
function getBroswer() {
var sys = {};
var ua = navigator.userAgent.toLowerCase();
var s;
(s = ua.match(/edge\/([\d.]+)/))
? (sys.edge = s[1])
: (s = ua.match(/rv:([\d.]+)\) like gecko/))
? (sys.ie = s[1])
: (s = ua.match(/msie ([\d.]+)/))
? (sys.ie = s[1])
: (s = ua.match(/firefox\/([\d.]+)/))
? (sys.firefox = s[1])
: (s = ua.match(/chrome\/([\d.]+)/))
? (sys.chrome = s[1])
: (s = ua.match(/opera.([\d.]+)/))
? (sys.opera = s[1])
: (s = ua.match(/version\/([\d.]+).*safari/))
? (sys.safari = s[1])
: 0;
? (sys.chrome = s[1])
: (s = ua.match(/opera.([\d.]+)/))
? (sys.opera = s[1])
: (s = ua.match(/version\/([\d.]+).*safari/))
? (sys.safari = s[1])
: 0;
if (sys.edge) return { broswer: "Edge", version: sys.edge };
if (sys.ie) return { broswer: "IE", version: sys.ie };
if (sys.firefox)
return { broswer: "Firefox", version: sys.firefox };
if (sys.chrome) return { broswer: "Chrome", version: sys.chrome };
if (sys.opera) return { broswer: "Opera", version: sys.opera };
if (sys.safari) return { broswer: "Safari", version: sys.safari };
if (sys.edge) return { broswer: "Edge", version: sys.edge };
if (sys.ie) return { broswer: "IE", version: sys.ie };
if (sys.firefox)
return { broswer: "Firefox", version: sys.firefox };
if (sys.chrome) return { broswer: "Chrome", version: sys.chrome };
if (sys.opera) return { broswer: "Opera", version: sys.opera };
if (sys.safari) return { broswer: "Safari", version: sys.safari };
return { broswer: "", version: "0" };
}
return { broswer: "", version: "0" };
}
var broswerUA = getBroswer();
var broswerUA = getBroswer();
if (broswerUA.broswer == "IE") {
document.body.innerHTML =
'<div class="toast">去他妈的Internet Explorer请使用现代浏览器访问该站点例如<a href="http://aka.186526.xyz/Chrome">Chrome</a>、<a href="http://aka.186526.xyz/Firefox">Firefox</a>。</div>' +
document.body.innerHTML;
} else if (broswerUA.broswer == "chrome" && broswerUA.version <= 60) {
document.body.innerHTML =
'<div class="toast">摆脱旧版Chrome请使用新版<a href="http://aka.186526.xyz/Chrome">Chrome</a>访问该站点。</div>' +
document.body.innerHTML;
}
})();
</script>
</head>
if (broswerUA.broswer == "IE") {
document.body.innerHTML =
'<div class="toast">去他妈的Internet Explorer请使用现代浏览器访问该站点例如<a href="http://go.186526.xyz/Chrome">Chrome</a>、<a href="http://go.186526.xyz/Firefox">Firefox</a>。</div>' +
document.body.innerHTML;
} else if (broswerUA.broswer == "chrome" && broswerUA.version <= 60) {
document.body.innerHTML =
'<div class="toast">摆脱旧版Chrome请使用新版<a href="http://go.186526.xyz/Chrome">Chrome</a>访问该站点。</div>' +
document.body.innerHTML;
}
})();
</script>
<body>
<app>
<background>
<p>PID @ 78361641</p>
</background>
<header>
<img src="./avatar.png" alt="avatar" width="100px" />
<div>
<h1>
<a href="https://186526.xyz" title="186526.xyz - It's me, 186526!"
>It's me, 186526!</a
>
</h1>
<p><description>一个啥都不会的屑</description></p>
</div>
</header>
<contents>
<group id="channel">
<card id="blog">
<a href="https://blog.186526.xyz" alt="186526's Blog"
><img src="https://storage.186526.xyz/home-app/assets/hexo.svg"
/></a>
</card>
<card id="status">
<a href="https://status.186526.eu.org/" alt="186526's Status"
><img
src="https://storage.186526.xyz/home-app/assets/uptimerobot.ico"
/></a>
</card>
<card id="dn42">
<a href="https://net.186526.xyz" alt="186526 Network @ DN42"
><img src="https://storage.186526.xyz/home-app/assets/dn42.png"
/></a>
</card>
<card id="gitea">
<a href="https://git.186526.xyz" alt="186526's Gitea"
><img src="https://git.186526.xyz/assets/img/logo.svg"
/></a>
</card>
<card id="github">
<a href="https://github.com/186526" alt="Github"
><img
src="https://storage.186526.xyz/home-app/assets/github.svg"
/></a>
</card>
<card id="telegram">
<a href="https://t.me/real186526" alt="Telegram"
><img
src="https://storage.186526.xyz/home-app/assets/telegram.svg"
/></a>
</card>
<card id="email">
<a href="mailto:admin@186526.xyz" alt="Email">
<icon>mail</icon>
</a>
</card>
</group>
<group id="friend">
<card>
<a
href="https://zikin.org/"
alt="Zikin的独立博客 - 青春大概如你所说"
><img
src="https://cdn.jsdelivr.net/gh/ZikinCDN/img@latest/2021/logo.jpg"
/></a>
</card>
<card>
<a
href="https://blog.skrshadow.cn/"
alt="Skrshadow - 是红雨, 斯哈斯哈"
><img
src="https://sdn.geekzu.org/avatar/e2027c37ef15b736cf3ee8b7803216c4"
/></a>
</card>
<card>
<a href="https://radium-bit.github.io/" alt="Radium-bit"
><img
src="https://cdn.jsdelivr.net/gh/radium-bit/res@latest/avatar.webp"
/></a>
</card>
<card>
<a href="https://jimmyqin.com/" alt="JimmyQin's Blog"
><img src="https://jimmyqin.com/images/avatar.png"
/></a>
</card>
<card>
<a
href="https://laple.me"
alt="Lapis Apple - 一个回收站里面住着Lapis Apple。"
><img
src="https://storage.186526.xyz/home-app/assets/lsp.avatar.png"
/></a>
</card>
<card>
<a
href="https://blog.maxelbk.eu.org"
alt="Maxel Black - Code & write what we want."
><img src="https://blog.maxelbk.eu.org/r/maxel.jpg"
/></a>
</card>
</group>
<group id="footer">
<div>
<a alt="PGP Key" href="https://i.186526.xyz/pgp_keys.asc">
<img
src="https://blog.186526.xyz/shields.io/keybase/pgp/186526"
/>
</a>
<a alt="Moe ICP 20218600" href="https://icp.gov.moe/?keyword=20218600"
><img
src="https://blog.186526.xyz/shields.io/badge/%E8%90%8CICP%E5%A4%87-20218600-blue"
/></a>
<a alt="186526.xyz Uptime" href="https://status.186526.eu.org/"
><img
src="https://blog.186526.xyz/shields.io/uptimerobot/ratio/m786767672-6913a353d708838f195d30d8"
/></a>
<a alt="CI Status" href="https://ci.186526.xyz/186526/home-app">
<img
src="https://ci.186526.xyz/api/badges/186526/home-app/status.svg"
/>
</a>
</div>
<p>
Building on <code>"unknown"</code> of <a href="https://net.186526.xyz">186526 Network</a>.
<br>
Performance & Host By Cloudflare & Vercel.
</p>
<p>Copyright © 2020 - Now 186526.xyz All rights Reserved.</p>
</group>
</contents>
</app>
</body>
<none id="description-list">
<p>一个啥都不会的屑</p>
<p>
LSP, Verified by
<img
src="https://storage.186526.xyz/home-app/assets/lama.avatar.png"
alt="lama3l9r's avatar"
/>
and
<img
src="https://storage.186526.xyz/home-app/assets/lsp.avatar.png"
alt="lsp's avatar"
/>
</p>
<p>Less code, more bug.</p>
<p>Arknights Player</p>
<p>btw, I use arch</p>
<p><code>console.log('Arch is the best!');</code></p>
<p>24岁, 是学生</p>
<p>一天25小时绝赞配网中...</p>
<p>DN42 贴(pi)贴(er)请求中...</p>
<p>大陆北方网友</p>
<p>Linux user ✗ KVM user ✓</p>
<p>世界一级拖延症证书持有者</p>
<p>想拥有强大的自制力</p>
<p>想做好自己</p>
<p>wowaka, 晚安.</p>
</none>
</head>
</html>
</html>

View File

@ -21,7 +21,6 @@
"workbox-cdn": "4.2.0"
},
"browserslist": [
"defaults",
"not ie 11"
">0.3%, defaults, chrome 48"
]
}

14
public/assets/dn42.svg Normal file
View File

@ -0,0 +1,14 @@
<svg width="256" height="256" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" version="1.1">
<g>
<title>Layer 1</title>
<g id="svg_12">
<polygon id="svg_1" points="68.44992065429688,114.8499755859375 36.249969482421875,114.8499755859375 20.14996337890625,142.75 36.249969482421875,170.64996337890625 68.44992065429688,170.64996337890625 84.5499267578125,142.75 "/>
<polygon id="svg_2" fill="#3C3C3B" points="118.74996948242188,143.35003662109375 86.54995727539062,143.35003662109375 70.44992065429688,171.25 86.54995727539062,199.1500244140625 118.74996948242188,199.1500244140625 134.85003662109375,171.25 " class="st0"/>
<polygon id="svg_3" fill="#575756" points="118.74996948242188,85.64996337890625 86.54995727539062,85.64996337890625 70.44992065429688,113.54998779296875 86.54995727539062,141.449951171875 118.74996948242188,141.449951171875 134.85003662109375,113.54998779296875 " class="st1"/>
<polygon id="svg_4" fill="#706F6F" points="168.85003662109375,114.8499755859375 136.6500244140625,114.8499755859375 120.54995727539062,142.75 136.6500244140625,170.64996337890625 168.85003662109375,170.64996337890625 184.949951171875,142.75 " class="st2"/>
<polygon id="svg_5" fill="#9D9D9C" points="219.75,143.35003662109375 187.55001831054688,143.35003662109375 171.449951171875,171.25 187.55001831054688,199.1500244140625 219.75,199.1500244140625 235.85003662109375,171.25 " class="st3"/>
<polygon id="svg_6" fill="#878787" points="168.85003662109375,56.8499755859375 136.6500244140625,56.8499755859375 120.54995727539062,84.75 136.6500244140625,112.54998779296875 168.85003662109375,112.54998779296875 184.949951171875,84.75 " class="st4"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

1
public/assets/gitea.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640" style="enable-background:new 0 0 640 640" xml:space="preserve" width="32" height="32"><path style="fill:#fff" d="m395.9 484.2-126.9-61c-12.5-6-17.9-21.2-11.8-33.8l61-126.9c6-12.5 21.2-17.9 33.8-11.8 17.2 8.3 27.1 13 27.1 13l-.1-109.2 16.7-.1.1 117.1s57.4 24.2 83.1 40.1c3.7 2.3 10.2 6.8 12.9 14.4 2.1 6.1 2 13.1-1 19.3l-61 126.9c-6.2 12.7-21.4 18.1-33.9 12z"/><path style="fill:#609926" d="M622.7 149.8c-4.1-4.1-9.6-4-9.6-4s-117.2 6.6-177.9 8c-13.3.3-26.5.6-39.6.7v117.2c-5.5-2.6-11.1-5.3-16.6-7.9 0-36.4-.1-109.2-.1-109.2-29 .4-89.2-2.2-89.2-2.2s-141.4-7.1-156.8-8.5c-9.8-.6-22.5-2.1-39 1.5-8.7 1.8-33.5 7.4-53.8 26.9C-4.9 212.4 6.6 276.2 8 285.8c1.7 11.7 6.9 44.2 31.7 72.5 45.8 56.1 144.4 54.8 144.4 54.8s12.1 28.9 30.6 55.5c25 33.1 50.7 58.9 75.7 62 63 0 188.9-.1 188.9-.1s12 .1 28.3-10.3c14-8.5 26.5-23.4 26.5-23.4S547 483 565 451.5c5.5-9.7 10.1-19.1 14.1-28 0 0 55.2-117.1 55.2-231.1-1.1-34.5-9.6-40.6-11.6-42.6zM125.6 353.9c-25.9-8.5-36.9-18.7-36.9-18.7S69.6 321.8 60 295.4c-16.5-44.2-1.4-71.2-1.4-71.2s8.4-22.5 38.5-30c13.8-3.7 31-3.1 31-3.1s7.1 59.4 15.7 94.2c7.2 29.2 24.8 77.7 24.8 77.7s-26.1-3.1-43-9.1zm300.3 107.6s-6.1 14.5-19.6 15.4c-5.8.4-10.3-1.2-10.3-1.2s-.3-.1-5.3-2.1l-112.9-55s-10.9-5.7-12.8-15.6c-2.2-8.1 2.7-18.1 2.7-18.1L322 273s4.8-9.7 12.2-13c.6-.3 2.3-1 4.5-1.5 8.1-2.1 18 2.8 18 2.8L467.4 315s12.6 5.7 15.3 16.2c1.9 7.4-.5 14-1.8 17.2-6.3 15.4-55 113.1-55 113.1z"/><path style="fill:#609926" d="M326.8 380.1c-8.2.1-15.4 5.8-17.3 13.8-1.9 8 2 16.3 9.1 20 7.7 4 17.5 1.8 22.7-5.4 5.1-7.1 4.3-16.9-1.8-23.1l24-49.1c1.5.1 3.7.2 6.2-.5 4.1-.9 7.1-3.6 7.1-3.6 4.2 1.8 8.6 3.8 13.2 6.1 4.8 2.4 9.3 4.9 13.4 7.3.9.5 1.8 1.1 2.8 1.9 1.6 1.3 3.4 3.1 4.7 5.5 1.9 5.5-1.9 14.9-1.9 14.9-2.3 7.6-18.4 40.6-18.4 40.6-8.1-.2-15.3 5-17.7 12.5-2.6 8.1 1.1 17.3 8.9 21.3 7.8 4 17.4 1.7 22.5-5.3 5-6.8 4.6-16.3-1.1-22.6 1.9-3.7 3.7-7.4 5.6-11.3 5-10.4 13.5-30.4 13.5-30.4.9-1.7 5.7-10.3 2.7-21.3-2.5-11.4-12.6-16.7-12.6-16.7-12.2-7.9-29.2-15.2-29.2-15.2s0-4.1-1.1-7.1c-1.1-3.1-2.8-5.1-3.9-6.3 4.7-9.7 9.4-19.3 14.1-29-4.1-2-8.1-4-12.2-6.1-4.8 9.8-9.7 19.7-14.5 29.5-6.7-.1-12.9 3.5-16.1 9.4-3.4 6.3-2.7 14.1 1.9 19.8l-24.6 50.4z"/></svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

3
public/assets/github.svg Normal file
View File

@ -0,0 +1,3 @@
<svg width="1024" height="1024" viewBox="0 0 1024 1024" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8C0 11.54 2.29 14.53 5.47 15.59C5.87 15.66 6.02 15.42 6.02 15.21C6.02 15.02 6.01 14.39 6.01 13.72C4 14.09 3.48 13.23 3.32 12.78C3.23 12.55 2.84 11.84 2.5 11.65C2.22 11.5 1.82 11.13 2.49 11.12C3.12 11.11 3.57 11.7 3.72 11.94C4.44 13.15 5.59 12.81 6.05 12.6C6.12 12.08 6.33 11.73 6.56 11.53C4.78 11.33 2.92 10.64 2.92 7.58C2.92 6.71 3.23 5.99 3.74 5.43C3.66 5.23 3.38 4.41 3.82 3.31C3.82 3.31 4.49 3.1 6.02 4.13C6.66 3.95 7.34 3.86 8.02 3.86C8.7 3.86 9.38 3.95 10.02 4.13C11.55 3.09 12.22 3.31 12.22 3.31C12.66 4.41 12.38 5.23 12.3 5.43C12.81 5.99 13.12 6.7 13.12 7.58C13.12 10.65 11.25 11.33 9.47 11.53C9.76 11.78 10.01 12.26 10.01 13.01C10.01 14.08 10 14.94 10 15.21C10 15.42 10.15 15.67 10.55 15.59C13.71 14.53 16 11.53 16 8C16 3.58 12.42 0 8 0Z" transform="scale(64)" fill="#1B1F23"/>
</svg>

After

Width:  |  Height:  |  Size: 968 B

5
public/assets/hexo.svg Normal file
View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<svg xmlns="http://www.w3.org/2000/svg" t="1620498362306" viewBox="0 0 1024 1024" version="1.1" p-id="1492" width="500" height="500" class="icon">
<path d="M512 0.298667L66.986667 258.389333V770.133333L512 1023.786667l445.013333-258.090667V253.952L512 0.298667z m204.714667 729.813333l-40.064 22.229333-40.064-22.229333V552.106667H387.413333v178.005333l-40.106666 22.229333-40.021334-22.229333V293.973333l40.064-22.229333 40.064 22.229333v178.005334h249.173334V293.973333l40.106666-22.229333 40.021334 22.229333v436.138667z" p-id="1493" fill="#0e83cd"/>
</svg>

After

Width:  |  Height:  |  Size: 603 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

BIN
public/assets/og.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 264 KiB

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="1000px" height="1000px" viewBox="0 0 1000 1000" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 53.2 (72643) - https://sketchapp.com -->
<title>Artboard</title>
<desc>Created with Sketch.</desc>
<defs>
<linearGradient x1="50%" y1="0%" x2="50%" y2="99.2583404%" id="linearGradient-1">
<stop stop-color="#2AABEE" offset="0%"></stop>
<stop stop-color="#229ED9" offset="100%"></stop>
</linearGradient>
</defs>
<g id="Artboard" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<circle id="Oval" fill="url(#linearGradient-1)" cx="500" cy="500" r="500"></circle>
<path d="M226.328419,494.722069 C372.088573,431.216685 469.284839,389.350049 517.917216,369.122161 C656.772535,311.36743 685.625481,301.334815 704.431427,301.003532 C708.567621,300.93067 717.815839,301.955743 723.806446,306.816707 C728.864797,310.92121 730.256552,316.46581 730.922551,320.357329 C731.588551,324.248848 732.417879,333.113828 731.758626,340.040666 C724.234007,419.102486 691.675104,610.964674 675.110982,699.515267 C668.10208,736.984342 654.301336,749.547532 640.940618,750.777006 C611.904684,753.448938 589.856115,731.588035 561.733393,713.153237 C517.726886,684.306416 492.866009,666.349181 450.150074,638.200013 C400.78442,605.66878 432.786119,587.789048 460.919462,558.568563 C468.282091,550.921423 596.21508,434.556479 598.691227,424.000355 C599.00091,422.680135 599.288312,417.758981 596.36474,415.160431 C593.441168,412.561881 589.126229,413.450484 586.012448,414.157198 C581.598758,415.158943 511.297793,461.625274 375.109553,553.556189 C355.154858,567.258623 337.080515,573.934908 320.886524,573.585046 C303.033948,573.199351 268.692754,563.490928 243.163606,555.192408 C211.851067,545.013936 186.964484,539.632504 189.131547,522.346309 C190.260287,513.342589 202.659244,504.134509 226.328419,494.722069 Z" id="Path-3" fill="#FFFFFF"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

@ -1,22 +1,51 @@
{
"name": "It's me, 186526!",
"short_name": "186526.xyz",
"lang": "zh-CN",
"start_url": "/",
"display": "standalone",
"theme_color": "#2A2734",
"background_color": "#FBDBC4",
"icons": [
{
"src": "./maskable.png",
"sizes": "1269x1269",
"type": "image/png",
"purpose": "any maskable"
},
{
"src": "./avatar.webp",
"sizes": "512x512",
"type": "image/webp"
}
]
"name": "It's me, 186526!",
"short_name": "186526.xyz",
"lang": "zh-CN",
"start_url": "/",
"display": "standalone",
"theme_color": "#00bdff",
"background_color": "#121212",
"icons": [
{
"src": "./maskable.png",
"sizes": "1269x1269",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "./avatar.webp",
"sizes": "512x512",
"type": "image/webp"
}
],
"shortcuts": [
{
"name": "Blog",
"short_name": "Blog",
"description": "Go to check my blog",
"url": "/goto/blog",
"icons": [
{
"src": "/assets/hexo.svg",
"sizes": "500x500"
}
]
}
],
"screenshots": [
{
"src": "./assets/og.png",
"sizes": "863x451",
"type": "image/webp",
"form_factor": "wide",
"label": "Homescreen of it."
},
{
"src": "./assets/og.png",
"sizes": "863x451",
"type": "image/webp",
"label": "Homescreen of it."
}
]
}

View File

@ -6,7 +6,7 @@ self.addEventListener("install", (e) => {
if (workbox) {
workbox.core.setCacheNameDetails({
prefix: "home-app",
suffix: "0.0.3",
suffix: "0.0.5",
precache: "precache",
runtime: "runtime",
});

BIN
resources/background.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

BIN
resources/background.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

View File

@ -10,7 +10,7 @@ import Tippy from 'tippy.js';
import 'tippy.js/dist/tippy.css';
import 'tippy.js/animations/scale.css';
window.addEventListener("load", (_ev) => {
window.addEventListener("DOMContentLoaded", (_ev) => {
new Typed(document.querySelector("description") ?? "description", {
stringsElement: "#description-list",
shuffle: true,
@ -31,7 +31,7 @@ window.addEventListener("load", (_ev) => {
// @ts-expect-error
document.querySelector(
"#footer > div"
).innerHTML += `<a href="https://git.186526.xyz/186526/home-app"><img alt="Update Commit" src="https://blog.186526.xyz/shields.io/badge/commit-${APP_VERSION}-blue" /></a> <img alt="Latest Update" src="https://blog.186526.xyz/shields.io/date/${APP_BUILD_TIME}?color=sucessful&label=latest%20update" />`;
).innerHTML += `<a alt="Update Commit" href="https://git.186526.xyz/186526/home-app/src/commit/${APP_VERSION}"><img alt="Update Commit" src="https://186526.xyz/shields.io/badge/commit-${APP_VERSION}-blue" /></a> <img alt="Latest Update" src="https://186526.xyz/shields.io/date/${APP_BUILD_TIME}?color=sucessful&label=latest%20update" />`;
// @ts-expect-error
document.querySelector("#footer").innerHTML = document.querySelector("#footer")?.innerHTML.replaceAll("unknown",__APP_BUILD_MACHINE__);

View File

@ -1,160 +1,160 @@
:root {
--background-color: #fff;
--font-color: #000;
--font-color-lighter: rgb(87, 89, 88);
--font-size-main: 3.045rem;
--font-size-description: 1.245rem;
--lineheight-description: 1.845rem;
--box-color: rgba(242, 242, 242, 0.5);
--working-color: #137333;
--working-color-background: #e6f4ea;
--error-color-background: #fce8e6;
--error-color: #c5221f;
--working-with-error-color: #b05a00;
--working-with-error-color-background: #fef7e0;
--linear-start-color: #f37335;
--linear-end-color: #ff4200fc;
--icon-size: 48px;
--mask-color: rgba(255, 255, 255, 0.5);
--background-color: #fff;
--font-color: #000;
--font-color-lighter: rgb(87, 89, 88);
--font-size-main: 3.045rem;
--font-size-description: 1.245rem;
--lineheight-description: 1.845rem;
--box-color: rgba(242, 242, 242, 0.5);
--working-color: #137333;
--working-color-background: #e6f4ea;
--error-color-background: #fce8e6;
--error-color: #c5221f;
--working-with-error-color: #b05a00;
--working-with-error-color-background: #fef7e0;
--linear-start-color: #f37335;
--linear-end-color: #ff4200fc;
--icon-size: 48px;
--mask-color: rgba(255, 255, 255, 0.5);
}
h2,
h1 {
font-family: "Google Sans", Roboto, Noto Sans SC, sans-serif;
background-image: linear-gradient(
90deg,
var(--linear-start-color),
var(--linear-end-color)
) !important;
color: transparent !important;
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
font-family: "Google Sans", Roboto, Noto Sans SC, sans-serif;
color: var(--linear-end-color);
background-image: linear-gradient(
90deg,
var(--linear-start-color),
var(--linear-end-color)
);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
div,
p {
font-family: Roboto, Noto Sans SC, sans-serif;
line-height: 140%;
font-family: Roboto, Noto Sans SC, sans-serif;
line-height: 140%;
}
body {
margin: 20vh calc(10vw - 0.5rem);
font-family: Roboto, Noto Sans SC, sans-serif;
color: var(--font-color);
background-color: var(--background-color);
margin: 20vh calc(10vw - 0.5rem);
font-family: Roboto, Noto Sans SC, sans-serif;
color: var(--font-color);
background-color: var(--background-color);
}
background > p {
visibility: hidden;
position: absolute;
top: 69vh;
right: 0;
color: var(--font-color-lighter);
font-size: calc(var(--font-size-description) - 0.4rem);
visibility: hidden;
position: absolute;
top: 69vh;
right: 0;
color: var(--font-color-lighter);
font-size: calc(var(--font-size-description) - 0.4rem);
}
background:hover > p {
visibility: visible;
visibility: visible;
}
a {
text-decoration: none;
color: #1e7dff;
text-decoration: none;
color: #1e7dff;
}
@media screen and (max-width: 480px) {
body {
margin: 20vh calc(4vw - 0.5rem);
}
body {
margin: 20vh calc(4vw - 0.5rem);
}
.toast {
margin: 0 2vw !important;
}
.toast {
margin: 0 2vw !important;
}
:root {
--font-size-main: 2.25rem;
--font-size-description: 1.045rem;
}
:root {
--font-size-main: 2.25rem;
--font-size-description: 1.045rem;
}
}
code {
font-family: Fira Mono, monospace;
font-family: Fira Mono, monospace;
}
none {
display: none;
display: none;
}
icon {
vertical-align: middle;
font-size: 48px;
font-family: "Material Icons Outlined";
font-weight: normal;
font-style: normal;
line-height: 1;
letter-spacing: normal;
text-transform: none;
display: inline-block;
white-space: nowrap;
word-wrap: normal;
direction: ltr;
-webkit-font-feature-settings: "liga";
font-feature-settings: "liga";
-webkit-font-smoothing: antialiased;
vertical-align: middle;
font-size: 48px;
font-family: "Material Icons Outlined";
font-weight: normal;
font-style: normal;
line-height: 1;
letter-spacing: normal;
text-transform: none;
display: inline-block;
white-space: nowrap;
word-wrap: normal;
direction: ltr;
-webkit-font-feature-settings: "liga";
font-feature-settings: "liga";
-webkit-font-smoothing: antialiased;
}
background {
top: 0px;
right: 0px;
float: right;
position: absolute;
min-width: 100%;
min-height: 75vh;
background-size: cover;
background-image: url(https://storage.186526.xyz/home-app/assets/background.webp),
url(https://storage.186526.xyz/home-app/assets/background.png);
z-index: -1;
border-radius: 0 0 15px 15px;
filter: blur(0.2px);
top: 0px;
right: 0px;
float: right;
position: absolute;
width: 100%;
height: 95%;
max-height: 86vh;
background-size: cover;
background-image: url(/resources/background.webp),
url(/resources/background.png);
z-index: -1;
border-radius: 0 0 15px 15px;
filter: blur(0.2px);
}
@media (prefers-color-scheme: dark) {
:root {
--font-color: #e8eaed;
--font-color-lighter: #9aa0a6;
--background-color: #121212;
--box-color: rgb(40 40 40 / 73%);
--working-color-background: rgba(129, 201, 149, 0.24);
--error-color-background: rgba(242, 139, 130, 0.24);
--working-with-error-color-background: rgba(253, 214, 99, 0.24);
--working-color: #81c995;
--error-color: #f28b82;
--working-with-error-color: #fdd663;
--linear-start-color: #0c8cca;
--linear-end-color: #00bdff;
--mask-color: rgba(0, 0, 0, 0.5);
}
:root {
--font-color: #e8eaed;
--font-color-lighter: #9aa0a6;
--background-color: #121212;
--box-color: rgb(40 40 40 / 73%);
--working-color-background: rgba(129, 201, 149, 0.24);
--error-color-background: rgba(242, 139, 130, 0.24);
--working-with-error-color-background: rgba(253, 214, 99, 0.24);
--working-color: #81c995;
--error-color: #f28b82;
--working-with-error-color: #fdd663;
--linear-start-color: #0c8cca;
--linear-end-color: #00bdff;
--mask-color: rgba(0, 0, 0, 0.5);
}
background {
filter: brightness(50%);
}
background {
filter: brightness(50%);
}
}
.toast {
background: var(--mask-color);
border-radius: 8px;
display: block;
padding: 0.4rem;
width: 100%;
background: var(--mask-color);
border-radius: 8px;
display: block;
padding: 0.4rem;
width: 100%;
left: 0px;
position: absolute;
top: 8px;
right: 0px;
width: -webkit-fill-available;
width: fill-available;
margin: 0 5vw;
left: 0px;
position: absolute;
top: 8px;
right: 0px;
width: stretch;
margin: 0 5vw;
backdrop-filter: blur(15px);
backdrop-filter: blur(15px);
}

View File

@ -1,7 +1,7 @@
contents {
display: flex;
position: relative;
top: 32.5vh;
top: calc(37.5vh - 0.5rem);
right: 0vh;
left: 0vh;
@ -40,7 +40,7 @@ card {
card > a > img {
max-height: 48px;
max-width: 48px;
width: 48px;
vertical-align: middle;
}
@ -70,11 +70,11 @@ group#footer > * {
@media screen and (max-width: 1024px) {
contents {
top: 27.5vh;
top: calc(32.5vh - 0.5rem);
}
}
@media screen and (max-width: 480px) {
@media screen and (max-width: 530px) {
contents {
top: 20vh;
}

View File

@ -18,6 +18,7 @@ header > div h1 {
font-weight: normal;
font-size: var(--font-size-main);
line-height: var(--font-size-main);
padding-bottom: 0.65rem;
}
header > div description {
@ -47,6 +48,7 @@ header {
header > img {
margin-right: 1rem;
margin-bottom: 1rem;
margin-top: 1rem;
}
@media screen and (min-width: 768px) {
@ -62,12 +64,21 @@ header > img {
@media screen and (max-width: 1024px) {
header {
height: 20vh;
width: -moz-available;
width: -webkit-fill-available;
width: fill-available;
width: stretch;
}
}
@media screen and (max-width: 480px) {
@media screen and (max-width: 768px) {
header {
height: auto;
}
header p {
margin-bottom: 1rem;
}
}
@media screen and (max-width: 530px) {
header {
min-height: 30vh;
}

View File

@ -1,55 +1,68 @@
{
"routes": [
{
"src": "/(.*)",
"headers": {
"Cache-Control": "s-maxage=1209600, max-age=86400, public",
"Strict-Transport-Security": "max-age=63072000; includeSubDomains; preload",
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, OPTIONS",
"Access-Control-Allow-Headers": "Accept, Authorization, Cache-Control, Content-Type, DNT, If-Modified-Since, Keep-Alive, Origin, User-Agent, X-Requested-With, Token, x-access-token"
},
"continue": true
},
{
"src": "/goto/github",
"status": 302,
"headers": {
"Location": "https://github.com/186526"
}
},
{
"src": "/goto/telegram",
"status": 302,
"headers": {
"Location": "https://t.me/real186526"
}
},
{
"src": "/goto/blog",
"status": 302,
"headers": {
"Location": "https://blog.186526.xyz"
}
},
{
"src": "/goto/email",
"status": 302,
"headers": {
"Location": "mailto:admin@186526.xyz"
}
},
{
"src": "/generate_204",
"status": 204,
"headers": {
"X-Powered-By": "SW2Express",
"Server": "sw=>express"
}
},
{
"src": "/v2/(.*)",
"dest": "https://registry.186526.xyz/v2/$1"
}
]
"routes": [
{
"src": "/(.*)",
"headers": {
"Cache-Control": "s-maxage=1209600, max-age=86400, public",
"Strict-Transport-Security": "max-age=63072000; includeSubDomains; preload",
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, OPTIONS",
"Access-Control-Allow-Headers": "Accept, Authorization, Cache-Control, Content-Type, DNT, If-Modified-Since, Keep-Alive, Origin, User-Agent, X-Requested-With, Token, x-access-token"
},
"continue": true
},
{ "handle": "filesystem" },
{
"src": "/goto/github",
"status": 302,
"headers": {
"Location": "https://github.com/186526"
}
},
{
"src": "/goto/telegram",
"status": 302,
"headers": {
"Location": "https://t.me/real186526"
}
},
{
"src": "/goto/blog",
"status": 302,
"headers": {
"Location": "https://blog.186526.xyz"
}
},
{
"src": "/goto/email",
"status": 302,
"headers": {
"Location": "mailto:i@186526.xyz"
}
},
{
"src": "/generate_204",
"status": 204,
"headers": {
"X-Powered-By": "SW2Express",
"Server": "sw=>express"
}
},
{
"src": "/v2/(.*)",
"dest": "https://registry.186526.xyz/v2/$1"
},
{
"src": "/shields.io/(.*)",
"dest": "https://img.shields.io/$1"
},
{
"src": "/(.*)",
"status": 302,
"headers": {
"Location": "/?from=$1"
},
"continue": false
}
]
}

724
yarn.lock

File diff suppressed because it is too large Load Diff