Skip to content

Commit d1c3ea9

Browse files
committed
Merge branch 'develop'
2 parents fe9ee16 + 832d2ae commit d1c3ea9

107 files changed

Lines changed: 9198 additions & 187 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

WebSite/assets/css/layout.css

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
:root {
2+
--color-accent-soft: rgba(108, 99, 255, 0.15);
23
--color-accent: #6c63ff;
34
--color-accent-dark: #4f47cc;
45

@@ -544,3 +545,75 @@ body.no-scroll .site-header {
544545
padding: 0.1rem 0.4rem;
545546
font-size: 0.75rem;
546547
}
548+
549+
/* ==========================================================================
550+
8. 言語切り替え
551+
========================================================================== */
552+
.lang-group {
553+
display: inline-flex;
554+
align-items: center;
555+
gap: 0.5rem;
556+
margin-left: 0.75rem;
557+
padding-left: 0.75rem;
558+
border-left: 1px solid var(--color-border);
559+
color: var(--color-text-muted);
560+
}
561+
562+
.lang-icon {
563+
width: 1.25rem;
564+
height: 1.25rem;
565+
fill: none;
566+
stroke: currentColor;
567+
stroke-width: 2;
568+
stroke-linecap: round;
569+
stroke-linejoin: round;
570+
opacity: 0.8;
571+
}
572+
573+
.lang-option {
574+
text-decoration: none;
575+
color: var(--color-text-muted);
576+
font-size: 0.85rem;
577+
font-weight: 500;
578+
padding: 0.25rem 0.5rem;
579+
border-radius: var(--radius-sm);
580+
transition: var(--transition-smooth);
581+
cursor: pointer;
582+
line-height: 1;
583+
}
584+
585+
.lang-option:hover {
586+
color: var(--color-text);
587+
background-color: var(--color-accent-soft);
588+
}
589+
590+
.lang-option.active {
591+
color: var(--color-accent);
592+
background-color: rgba(var(--color-accent-rgb), 0.1);
593+
font-weight: 700;
594+
cursor: default;
595+
pointer-events: none;
596+
}
597+
598+
.lang-sep {
599+
opacity: 0.3;
600+
font-size: 0.8rem;
601+
user-select: none;
602+
}
603+
604+
@media (max-width: 768px) {
605+
.lang-group {
606+
margin-left: 0;
607+
padding-left: 0;
608+
border-left: none;
609+
margin-top: 1rem;
610+
padding-top: 1rem;
611+
border-top: 1px solid var(--color-border-soft);
612+
width: 100%;
613+
}
614+
615+
.lang-option {
616+
font-size: 1rem;
617+
padding: 0.5rem 1rem;
618+
}
619+
}

WebSite/assets/data/blogList.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"zed",
1010
"ai"
1111
],
12-
"thumbnail": "assets/img/thumbnails/blog_00016.jpg",
12+
"thumbnail": "assets/img/zed_icon.png",
1313
"contentPath": "blog/blog_00016.html",
1414
"recommended": true
1515
},
@@ -111,7 +111,7 @@
111111
"lsp",
112112
"tool"
113113
],
114-
"thumbnail": "assets/img/thumbnails/blog_00009.jpg",
114+
"thumbnail": "assets/img/zed_icon.png",
115115
"contentPath": "blog/blog_00009.html",
116116
"recommended": false
117117
},
@@ -156,7 +156,7 @@
156156
"dropbox",
157157
"cloudstrage"
158158
],
159-
"thumbnail": "assets/img/thumbnails/blog_00005.png",
159+
"thumbnail": "assets/img/dropbox_icon.png",
160160
"contentPath": "blog/blog_00005.html",
161161
"recommended": false
162162
},
@@ -205,7 +205,7 @@
205205
"plugin",
206206
"tool"
207207
],
208-
"thumbnail": "https://cdn-ak.f.st-hatena.com/images/fotolife/R/Raspberly/20201207/20201207023915.png",
208+
"thumbnail": "assets/img/thumbnails/blog_00003.png",
209209
"contentPath": "blog/blog_00003.html",
210210
"recommended": false
211211
},
@@ -220,7 +220,7 @@
220220
"plugin",
221221
"tool"
222222
],
223-
"thumbnail": "https://cdn-ak.f.st-hatena.com/images/fotolife/R/Raspberly/20201207/20201207023915.png",
223+
"thumbnail": "assets/img/thumbnails/blog_00002.png",
224224
"contentPath": "blog/blog_00002.html",
225225
"recommended": false
226226
},
@@ -233,7 +233,7 @@
233233
"tags": [
234234
"diary"
235235
],
236-
"thumbnail": "https://breadmotion.github.io/WebSite/assets/img/ogp.png",
236+
"thumbnail": "assets/img/ogp.png",
237237
"contentPath": "blog/blog_00001.html",
238238
"recommended": false
239239
}
Lines changed: 240 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,240 @@
1+
[
2+
{
3+
"id": "blog_00016",
4+
"title": "Adding Rules in Zed",
5+
"date": "2025-11-30T00:00:00.000Z",
6+
"category": "IDE",
7+
"description": "A summary of how to use Zed's Rule feature",
8+
"tags": [
9+
"zed",
10+
"ai"
11+
],
12+
"thumbnail": "assets/img/zed_icon.png",
13+
"contentPath": "blog/en/blog_00016.html",
14+
"recommended": true
15+
},
16+
{
17+
"id": "blog_00015",
18+
"title": "Tried Implementing Background Animation with p5.js",
19+
"date": "2025-11-29T00:00:00.000Z",
20+
"category": "Technical Note",
21+
"description": "I implemented background animation using p5.js to bring movement to my static portfolio site. I will look back from a beginner's perspective, from introduction to implementation of 10 patterns.",
22+
"tags": [
23+
"p5js",
24+
"javascript"
25+
],
26+
"thumbnail": "assets/img/ogp.png",
27+
"contentPath": "blog/en/blog_00015.html",
28+
"recommended": false
29+
},
30+
{
31+
"id": "blog_00014",
32+
"title": "Easily Refactored CSS",
33+
"date": "2025-11-28T00:00:00.000Z",
34+
"category": "Technical Note",
35+
"description": "I quickly detected and organized \"unused CSS\" that tends to accumulate in personal development websites using a Node.js script.",
36+
"tags": [
37+
"css",
38+
"nodejs"
39+
],
40+
"thumbnail": "assets/img/ogp.png",
41+
"contentPath": "blog/en/blog_00014.html",
42+
"recommended": false
43+
},
44+
{
45+
"id": "blog_00012",
46+
"title": "Implementing a Contact Form on a Static Site (GAS Integration)",
47+
"date": "2025-11-27T00:00:00.000Z",
48+
"category": "Technical Note",
49+
"description": "Summarized how to implement a contact form without a server on static sites like GitHub Pages (using Google Apps Script).",
50+
"tags": [
51+
"gas",
52+
"javascript"
53+
],
54+
"thumbnail": "assets/img/ogp.png",
55+
"contentPath": "blog/en/blog_00012.html",
56+
"recommended": false
57+
},
58+
{
59+
"id": "blog_00013",
60+
"title": "Improving UX by Modaling Portfolio Details",
61+
"date": "2025-11-27T00:00:00.000Z",
62+
"category": "Technical Note",
63+
"description": "I modalized the portfolio work details so they can be viewed without page transitions. About HTML acquisition using DOMParser and pitfalls during implementation.",
64+
"tags": [
65+
"javascript",
66+
"ui-ux"
67+
],
68+
"thumbnail": "assets/img/ogp.png",
69+
"contentPath": "blog/en/blog_00013.html",
70+
"recommended": false
71+
},
72+
{
73+
"id": "blog_00011",
74+
"title": "Story of My Self-Made Discord Bot Being Abused for Spam When I Published It",
75+
"date": "2025-11-26T00:00:00.000Z",
76+
"category": "Discord",
77+
"description": "I published a self-made Discord bot, and it was used as a stepping stone for spam. I will summarize the architectural design mistakes that caused this and future security measures.",
78+
"tags": [
79+
"discord",
80+
"nodejs",
81+
"security"
82+
],
83+
"thumbnail": "assets/img/thumbnails/blog_00011.png",
84+
"contentPath": "blog/en/blog_00011.html",
85+
"recommended": false
86+
},
87+
{
88+
"id": "blog_00010",
89+
"title": "RClone Operation Flow",
90+
"date": "2025-11-20T00:00:00.000Z",
91+
"category": "CloudStorage",
92+
"description": "Explains how to efficiently manage large-scale assets and achieve CI/CD integration using rclone and shell scripts in a project.",
93+
"tags": [
94+
"tool",
95+
"cloudstorage",
96+
"git"
97+
],
98+
"thumbnail": "assets/img/thumbnails/blog_00010.png",
99+
"contentPath": "blog/en/blog_00010.html",
100+
"recommended": false
101+
},
102+
{
103+
"id": "blog_00009",
104+
"title": "Tried Building a C# Development Environment in Zed",
105+
"date": "2025-11-19T00:00:00.000Z",
106+
"category": "IDE",
107+
"description": "Summarized the steps and pitfalls to introduce a C# language server to Zed and enable completion and definition jumping in Unity projects",
108+
"tags": [
109+
"csharp",
110+
"zed",
111+
"lsp",
112+
"tool"
113+
],
114+
"thumbnail": "assets/img/zed_icon.png",
115+
"contentPath": "blog/en/blog_00009.html",
116+
"recommended": false
117+
},
118+
{
119+
"id": "blog_00007",
120+
"title": "RClone Introduction Flow",
121+
"date": "2025-11-17T00:00:00.000Z",
122+
"category": "CloudStorage",
123+
"description": "Summary of procedures for introducing rclone in Windows + Git Bash environment and linking with Google Drive",
124+
"tags": [
125+
"tool",
126+
"cloudstorage",
127+
"git"
128+
],
129+
"thumbnail": "assets/img/thumbnails/blog_00007.png",
130+
"contentPath": "blog/en/blog_00007.html",
131+
"recommended": false
132+
},
133+
{
134+
"id": "blog_00006",
135+
"title": "UE5 Plugin Development",
136+
"date": "2025-10-09T00:00:00.000Z",
137+
"category": "UE5",
138+
"description": "Plugin development in UE5 for game development",
139+
"tags": [
140+
"ue5",
141+
"cpp"
142+
],
143+
"thumbnail": "assets/img/thumbnails/blog_00006.png",
144+
"contentPath": "blog/en/blog_00006.html",
145+
"recommended": false
146+
},
147+
{
148+
"id": "blog_00005",
149+
"title": "Tried using Dropbox API",
150+
"date": "2025-05-09T00:00:00.000Z",
151+
"category": "CloudStorage",
152+
"description": "Saving free GitLFS users!",
153+
"tags": [
154+
"git",
155+
"api",
156+
"dropbox",
157+
"cloudstorage"
158+
],
159+
"thumbnail": "assets/img/dropbox_icon.png",
160+
"contentPath": "blog/en/blog_00005.html",
161+
"recommended": false
162+
},
163+
{
164+
"id": "blog_00004",
165+
"title": "Tried Introducing Modoium Remote",
166+
"date": "2025-04-20T00:00:00.000Z",
167+
"category": "Unity",
168+
"description": "Introduction of a feature that makes debugging convenient when the smartphone device is the platform in Unity development",
169+
"tags": [
170+
"unity",
171+
"plugin",
172+
"tool",
173+
"android",
174+
"ios"
175+
],
176+
"thumbnail": "assets/img/thumbnails/blog_00004.png",
177+
"contentPath": "blog/en/blog_00004.html",
178+
"recommended": true
179+
},
180+
{
181+
"id": "blog_00008",
182+
"title": "Reevaluating Discord Bot Architecture",
183+
"date": "2025-02-01T00:00:00.000Z",
184+
"category": "Discord",
185+
"description": "Configuration notes for Discord Bot, adding commands/events like plugins",
186+
"tags": [
187+
"discord",
188+
"nodejs",
189+
"architecture",
190+
"plugin",
191+
"tool"
192+
],
193+
"thumbnail": "assets/img/thumbnails/blog_00008.png",
194+
"contentPath": "blog/en/blog_00008.html",
195+
"recommended": true
196+
},
197+
{
198+
"id": "blog_00003",
199+
"title": "Tried Creating a Context Editor with Odin",
200+
"date": "2024-06-10T00:00:00.000Z",
201+
"category": "Unity",
202+
"description": "A story about creating a context editor for planners using Odin",
203+
"tags": [
204+
"unity",
205+
"plugin",
206+
"tool"
207+
],
208+
"thumbnail": "assets/img/thumbnails/blog_00003.png",
209+
"contentPath": "blog/en/blog_00003.html",
210+
"recommended": false
211+
},
212+
{
213+
"id": "blog_00002",
214+
"title": "Trying out Odin Inspector",
215+
"date": "2024-06-02T00:00:00.000Z",
216+
"category": "Unity",
217+
"description": "Trouble points and solutions when introducing Odin in a team",
218+
"tags": [
219+
"unity",
220+
"plugin",
221+
"tool"
222+
],
223+
"thumbnail": "assets/img/thumbnails/blog_00002.png",
224+
"contentPath": "blog/en/blog_00002.html",
225+
"recommended": false
226+
},
227+
{
228+
"id": "blog_00001",
229+
"title": "Started a Blog",
230+
"date": "2024-06-01T00:00:00.000Z",
231+
"category": "Diary",
232+
"description": "Self-introduction of the author",
233+
"tags": [
234+
"diary"
235+
],
236+
"thumbnail": "assets/img/ogp.png",
237+
"contentPath": "blog/en/blog_00001.html",
238+
"recommended": false
239+
}
240+
]

0 commit comments

Comments
 (0)