Skip to content

letYuchan/velogit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

velogit

logo

KO:

GitHub Pages์™€ Markdown ๊ธฐ๋ฐ˜์˜ ๊ธฐ์ˆ /๊ฐœ๋ฐœ ๋ธ”๋กœ๊ทธ ํ”Œ๋žซํผ

velogit์€ ๋‹จ์ˆœํ•œ ๋ธ”๋กœ๊ทธ ํ”„๋กœ์ ํŠธ๊ฐ€ ์•„๋‹ˆ๋ผ, ๋ˆ„๊ตฌ๋‚˜ ์‰ฝ๊ฒŒ ์„ค์น˜ํ•˜๊ณ  ์šด์˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ฐœ ๋ธ”๋กœ๊ทธ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค.
์—ฌ๋Ÿฌ๋ถ„ ์ž์‹ ์„ ์†Œ๊ฐœํ•˜๊ณ , ์Šต๋“ํ•œ ์ง€์‹๊ณผ ํ…Œํฌ๋‹‰์„ ๊ธฐ๋กํ•˜๋ฉฐ ๊ณต์œ ํ•˜์„ธ์š”.
์ •์  ์„œ๋ฒ„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜์—ฌ ๋น ๋ฅด๊ณ  ์•ˆ์ •์ ์ด๋ฉฐ, ์ž๋™ํ™”๋œ ๊ธฐ๋Šฅ๊ณผ ๊ฐ•๋ ฅํ•œ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ์—์„œ๋„ ์™„๋ฒฝํ•œ ๋ฐ˜์‘ํ˜• ๋Œ€์‘์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

EN:

A tech/development blog platform based on GitHub Pages and Markdown.

velogit is not just a blog project, but a developer blog platform that anyone can easily install and operate.
Introduce yourself, record your knowledge and techniques, and share them with others.
It runs on a static server, ensuring speed and stability, while providing automation and powerful customization.
It provides a fully responsive design on mobile environments as well.

Recommended environment: Chrome Tested environment: Chrome, Safari


๐ŸŽฏ ์†Œ๊ฐœ

  • ํ”Œ๋žซํผ: GitHub Pages + React + Markdown
  • ํŠน์ง•: ์‰ฝ๊ณ  ๋น ๋ฅธ ์„ค์น˜, ์ž๋™ํ™”๋œ ๋ฐฐํฌ, ๊ฐ•๋ ฅํ•œ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ์ง€์›
  • ๋ชฉํ‘œ:
    • ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ ์ด์ƒ์˜ ๊ฐœ์ธ ๋ธŒ๋žœ๋”ฉ ๋„๊ตฌ
    • ๊ณต๋ถ€ ๊ธฐ๋ก, ์ง€์‹ ๊ณต์œ , ์ž๊ธฐ์†Œ๊ฐœ์™€ ํฌํŠธํด๋ฆฌ์˜ค๊นŒ์ง€ ํ•œ ๋ฒˆ์— ๊ด€๋ฆฌ

โœจ ์ฃผ์š” ๊ธฐ๋Šฅ

๐Ÿ–‹๏ธ ์ž‘์„ฑ ๊ด€๋ จ ๊ธฐ๋Šฅ

velogit์€ ๋‹จ์ˆœํžˆ Markdown์„ ์ง€์›ํ•˜๋Š” ์ˆ˜์ค€์„ ๋„˜์–ด, ๊ฐœ๋ฐœ์ž ์นœํ™”์ ์ธ ์ž‘์„ฑ ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • 16๊ฐ€์ง€ ์ž‘์„ฑ ๋„์›€ ๊ธฐ๋Šฅ
    h1~h4 ์ž๋™์‚ฝ์ž…, Bold, Italic, StrikeThrough, ์ธ์šฉ๋ฌธ, ๋ฆฌ์ŠคํŠธ, ์ฝ”๋“œ ๋ธ”๋ก, ๋งํฌ, ์ด๋ฏธ์ง€/๋™์˜์ƒ ์‚ฝ์ž…, keyboard ํƒœ๊ทธ, mark ํƒœ๊ทธ, details-summary, ํ‘œ ์‚ฝ์ž…, ํŒŒ์ผ ์—…๋กœ๋“œ ๋“ฑ
  • Floating Toolbar
    ์ปค์„œ ์œ„์น˜ ๊ทผ์ฒ˜์— ํˆด๋ฐ”๋ฅผ ๋„์›Œ, ์ž‘์„ฑ ํ๋ฆ„์ด ๋Š๊ธฐ์ง€ ์•Š๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค.
  • ๋‹ค๊ตญ์–ด ๊ต์ • + ํ•œ๊ตญ์–ด ๊ต์ • ๊ธฐ๋Šฅ
    • ์˜์–ด, ์ผ๋ณธ์–ด ๋“ฑ ๋‹ค์–‘ํ•œ ์–ธ์–ด ๊ต์ •
    • ๋ฒ ํƒ€ ๊ธฐ๋Šฅ์ด์ง€๋งŒ, ํ•œ๊ตญ์–ด ๋ฌธ๋ฒ• ๊ต์ •๋„ ์ž๋™ํ™” ๊ฐ€๋Šฅ
  • ์ž‘์„ฑ ๋‚ด์šฉ ์œ ์‹ค ๋ฐฉ์ง€ ๊ธฐ๋Šฅ
    • ์ตœ๋Œ€ 5๊ฐœ์˜ ์ž„์‹œ๊ธ€ ์ €์žฅ ๊ฐ€๋Šฅ
    • ์‹ค์ˆ˜๋กœ ๋’ค๋กœ๊ฐ€๊ธฐ / ์ƒˆ๋กœ๊ณ ์นจ / ํƒญ ๋‹ซ๊ธฐ๋ฅผ ํ–ˆ์„ ๋•Œ, ์ž‘์„ฑ ์ค‘์ธ ๋‚ด์šฉ์„ ์žƒ์ง€ ์•Š๋„๋ก ํ™•์ธ ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œ

๐ŸŽจ ํ…Œ๋งˆ ์‹œ์Šคํ…œ

  • 15๊ฐ€์ง€ ๊ธฐ๋ณธ ํ…Œ๋งˆ + 1 ์ปค์Šคํ…€ ํ…Œ๋งˆ ์ œ๊ณต
  • ๊ฐ ํ…Œ๋งˆ๋Š” ๋ผ์ดํŠธ/๋‹คํฌ ๋ชจ๋“œ ์ง€์›
  • ๊ฐ„๋‹จํ•œ ์„ค์ •์œผ๋กœ ์ปค์Šคํ…€ ํ…Œ๋งˆ ์ ์šฉ ๊ฐ€๋Šฅ
  • ๋‚˜๋งŒ์˜ ๋ธ”๋กœ๊ทธ ๋ถ„์œ„๊ธฐ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐ•๋ ฅํ•œ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•

๐Ÿง˜ ์ŠคํŠธ๋ ˆ์นญ ํŒ์—…

๊ฐœ๋ฐœ์ž๋ผ๋ฉด ๋ˆ„๊ตฌ๋‚˜ ๊ณต๊ฐํ•˜๋Š” ๋ฌธ์ œ, ๋ฐ”๋กœ ์žฅ์‹œ๊ฐ„ ์•‰์•„์„œ ์ž‘์—…ํ•˜๋Š” ์Šต๊ด€!
velogit์€ ๋‹จ์ˆœ ๋ธ”๋กœ๊ทธ ์ด์ƒ์œผ๋กœ ๊ฑด๊ฐ•๊นŒ์ง€ ์ฑ™๊ธธ ์ˆ˜ ์žˆ๋Š” ์ŠคํŠธ๋ ˆ์นญ ์•Œ๋ฆผ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ์ŠคํŠธ๋ ˆ์นญ ๊ฐ„๊ฒฉ ๋ฐ ์‹œ๊ฐ„ ์ง์ ‘ ์„ค์ • ๊ฐ€๋Šฅ
  • ์ž‘์—… ์ค‘๊ฐ„์ค‘๊ฐ„ โ€œ์ผ์–ด๋‚˜์„œ ๊ธฐ์ง€๊ฐœ๋ฅผ ์ผœ๋ผโ€๋Š” ์œ ์พŒํ•œ ๋ฆฌ๋งˆ์ธ๋“œ

๐ŸŽถ ๋ธ”๋กœ๊ทธ ๋ฐฐ๊ฒฝ ์Œ์•…

๊ฐœ๋ฐœ์ž ๋ธ”๋กœ๊ทธ์˜ ๋”ฑ๋”ฑํ•จ๊ณผ ์ง€๋ฃจํ•จ์„ ์—†์• ๊ณ ์ž,
๊ฐœ์ธ์˜ ์ทจํ–ฅ์„ ๋‹ด์„ ์ˆ˜ ์žˆ๋„๋ก ๋ฐฐ๊ฒฝ ์Œ์•… ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ข‹์•„ํ•˜๋Š” ์Œ์•…์„ ํ‹€์–ด๋†“๊ณ , ๊ธ€์„ ์“ฐ๊ฑฐ๋‚˜ ๋ฐฉ๋ฌธ์ž์™€ ํ”Œ๋ ˆ์ด๋ฆฌ์ŠคํŠธ๋ฅผ ๊ณต์œ ํ•ด๋ณด์„ธ์š”. โ€ป ์ €์ž‘๊ถŒ์„ ๊ผญ ์ง€์ผœ์ฃผ์„ธ์š”!


๐Ÿชช About ํŽ˜์ด์ง€

๋ธ”๋กœ๊ทธ๋Š” ๊ณง ๋‚˜ ์ž์‹ ์„ ๋ณด์—ฌ์ฃผ๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค.

  • ์ž๊ธฐ์†Œ๊ฐœ ๋ฐ ํฌํŠธํด๋ฆฌ์˜ค ์š”์•ฝ ๊ฐ€๋Šฅ
  • ์ž์œ ๋กœ์šด ํ‘œํ˜„ ๊ฐ€๋Šฅ
  • ๋‹จ์ˆœ ๊ธฐ๋ก์šฉ ๋ธ”๋กœ๊ทธ๊ฐ€ ์•„๋‹Œ, ๋‚˜๋ฅผ ์•Œ๋ฆฌ๋Š” ํฌํŠธํด๋ฆฌ์˜ค ํ”Œ๋žซํผ

๐Ÿ‰ ๋ธ”๋กœ๊ทธ ์„ฑ์žฅ ์‹œ๊ฐํ™”

๋ธ”๋กœ๊ทธ๋ฅผ ์šด์˜ํ•˜๋Š” ์žฌ๋ฏธ๋ฅผ ๋”ํ•˜๊ธฐ ์œ„ํ•ด, ์„ฑ์žฅ ์š”์†Œ๋ฅผ ๊ฒŒ์ž„ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค.

  • ๊ธ€ ์ž‘์„ฑ ์ˆ˜(Post ๊ฐœ์ˆ˜)์— ๋”ฐ๋ผ ๋ธ”๋กœ๊ทธ๊ฐ€ ๋ ˆ๋ฒจ์—…
  • ๊ท€์—ฌ์šด ์•„์ผ€์ด๋“œํ’ ์šฉ ์บ๋ฆญํ„ฐ๋กœ ์„ฑ์žฅ ์‹œ๊ฐํ™”
  • Top 3 ์นดํ…Œ๊ณ ๋ฆฌ์™€ ๋ˆ„์  ๊ฒŒ์‹œ๊ธ€ ์ˆ˜๋„ ํ•œ๋ˆˆ์— ํ™•์ธ ๊ฐ€๋Šฅ

๐Ÿ’ฌ ๋Œ“๊ธ€ ๊ธฐ๋Šฅ (Utterances ๊ธฐ๋ฐ˜)

๋ธ”๋กœ๊ทธ์— ์ด์Šˆ ๊ธฐ๋ฐ˜ ๋Œ“๊ธ€ ์‹œ์Šคํ…œ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
์ด๋Š” Utterances๋ฅผ ํ™œ์šฉํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž๋Š” GitHub ๊ณ„์ • ์ธ์ฆ๋งŒ์œผ๋กœ ๋Œ“๊ธ€์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ํŠน์ง•:

    • ๋Œ“๊ธ€์€ GitHub Repository์˜ Issue๋กœ ๊ด€๋ฆฌ๋ฉ๋‹ˆ๋‹ค.
    • GitHub ๊ณ„์ •์„ ๊ฐ€์ง„ ๋ˆ„๊ตฌ๋‚˜ ๋Œ“๊ธ€ ์ž‘์„ฑ ๊ฐ€๋Šฅ.
    • ๊น”๋”ํ•˜๊ณ  ๋ธ”๋กœ๊ทธ ์Šคํƒ€์ผ์— ์ž˜ ์–ด์šธ๋ฆฌ๋Š” UI ์ œ๊ณต.
  • ์‚ฌ์šฉ ์‹œ ์ฃผ์˜์‚ฌํ•ญ:

    • ์ตœ์ดˆ ๋Œ“๊ธ€ ์ž‘์„ฑ ์‹œ GitHub ์ธ์ฆ ๊ณผ์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
    • ์ธ์ฆ ํ›„์—๋Š” ๋ธ”๋กœ๊ทธ Home ํ™”๋ฉด์œผ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ๋ฉ๋‹ˆ๋‹ค.
      โ†’ ๋‹ค์‹œ ๋Œ“๊ธ€์„ ๋‹ฌ๊ณ  ์‹ถ๋‹ค๋ฉด, ๊ธ€ ์ƒ์„ธ ํŽ˜์ด์ง€๋กœ ์žฌ์ง„์ž…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ‘‰ ์ธ์ฆ๋งŒ ๋งˆ์น˜๋ฉด ์ดํ›„๋กœ๋Š” ํŽธ๋ฆฌํ•˜๊ฒŒ ๋Œ“๊ธ€์„ ๋‹ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


๐Ÿš€ ์ด์šฉ ๋ฐฉ๋ฒ•

1. ์‚ฌ์ „ ์ค€๋น„

์„ค์น˜๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ์•„๋ž˜ ๋ช…๋ น์–ด๋กœ ์ •์ƒ ์„ค์น˜ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜์„ธ์š”:

docker -v
docker run hello-world

2. ์ตœ์ดˆ ์‹คํ–‰

ํฌํฌ ํ›„ ์ฒซ ์‹คํ–‰ ์‹œ์—๋Š” ์•„๋ž˜ ๋ช…๋ น์–ด๋กœ Docker ์ด๋ฏธ์ง€๋ฅผ ๋นŒ๋“œํ•˜๊ณ  ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค:

docker compose up --build -d server

3. ๊ฐœ๋ฐœ ์„œ๋ฒ„ ์‹คํ–‰

ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋ฉด

์ตœ์ดˆ ์‹คํ–‰ ์‹œ ๋จผ์ € ์˜์กด์„ฑ์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค:

pnpm install

์ดํ›„ ๊ฐœ๋ฐœ ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค:

pnpm run dev

4. POST ๋“ฑ๋ก/์‚ญ์ œ

  • ๋ธ”๋กœ๊ทธ์—์„œ ์ƒˆ ๊ธ€ ์ž‘์„ฑ(ํ˜น์€ ์ˆ˜์ •) ํ›„ publish/edit ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด,
    ์ž๋™์œผ๋กœ ๋ฐฐํฌ ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ์ฝ”๋“œ๊ฐ€ ํด๋ฆฝ๋ณด๋“œ์— ๋ณต์‚ฌ๋ฉ๋‹ˆ๋‹ค.
  • ํ•ด๋‹น ์ฝ”๋“œ๋ฅผ velogit ๋ฃจํŠธ ํด๋”์—์„œ ๋ถ™์—ฌ๋„ฃ์–ด ์‹คํ–‰ํ•˜๋ฉด,
    ์ž๋™์œผ๋กœ GitHub Pages์— ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.

๐Ÿ‘‰ ์‚ฌ์šฉ์ž๋Š” ๊ธ€ ์ž‘์„ฑ ํ›„ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ณ  ๋ช…๋ น์–ด ํ•œ ์ค„ ์‹คํ–‰์œผ๋กœ ๋นŒ๋“œ โ†’ ์ปค๋ฐ‹ โ†’ ํ‘ธ์‹œ โ†’ ๋ฐฐํฌ๊นŒ์ง€ ํ•œ ๋ฒˆ์— ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

  • ๊ธ€ ์‚ญ์ œ๋Š” velogit/posts์—์„œ ์›ํ•˜๋Š” ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

5. ๊นƒํ—ˆ๋ธŒ ํŽ˜์ด์ง€ ์„ค์ •

  • ์ตœ์ดˆ ๊ธ€ ๋“ฑ๋ก์„ ํ•œ๋ฒˆ ํ•ด์ฃผ์„ธ์š”. ๋“ฑ๋ก ์‹œ gh-pages ๋ธŒ๋ Œ์น˜๊ฐ€ ์ž๋™์œผ๋กœ ์ƒ์„ฑ ๋ฐ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.
  • ์ดํ›„ Settings > Pages์— ๋“ค์–ด๊ฐ€ ์•„๋ž˜ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด branch๋ฅผ gh-pages๋กœ ํŽ˜์ด์ง€๋ฅผ ์„ค์ •ํ•ด์ฃผ์„ธ์š”. image
  • ์ผ๋ฐ˜์ ์ธ ์ฃผ์†Œ: https://github-name.github.io/velogit

6. ์ถ”ํ›„ ํ”Œ๋žซํผ ์—…๋ฐ์ดํŠธ

velogit ์›๋ณธ ์ €์žฅ์†Œ์˜ ์ตœ์‹  ์—…๋ฐ์ดํŠธ๋ฅผ ๋‚ด ์ €์žฅ์†Œ์— ๋ฐ˜์˜ํ•˜๋ ค๋ฉด
upstream์„ ์„ค์ •ํ•˜๊ณ , ์ฃผ๊ธฐ์ ์œผ๋กœ ์›๋ณธ์„ ๊ฐ€์ ธ์™€ ๋ณ‘ํ•ฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

git remote add upstream https://github.com/author/velogit.git

๋กœ ์›๋ณธ ์ €์žฅ์†Œ์™€ ์›๊ฒฉ ์„ค์ •์„ ํ•˜๊ณ  ์—…๋ฐ์ดํŠธ ๋‚ด์šฉ์ด ์žˆ๋‹ค๋ฉด

	1.	git fetch upstream
	2.	git merge upstream/master
	3.	git push origin master

๋กœ ๋ฐ˜์˜ํ•ด์ฃผ์‹œ๋ฉฐ ๋ฉ๋‹ˆ๋‹ค.


โš™๏ธ ๋ธ”๋กœ๊ทธ ์„ธํŒ…

์•„๋ž˜ ์„ค์ •์€ Velogit์„ ์ฒ˜์Œ ์‚ฌ์šฉํ•  ๋•Œ ๋ฐ˜๋“œ์‹œ ์ง„ํ–‰ํ•ด์•ผ ํ•˜๋Š” ํ•„์ˆ˜ ์„ธํŒ…์ž…๋‹ˆ๋‹ค. ์ด ์™ธ์˜ ์„ค์ •์„ ์ž„์˜๋กœ ๋ณ€๊ฒฝํ•œ ๋’ค ๋ฐฐํฌํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ์ €์ž‘๊ถŒ ์นจํ•ด์— ํ•ด๋‹นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


1. ํ…Œ๋งˆ ์„ค์ •

  • ๊ฒฝ๋กœ: velogit/public/images/system/themes

  • custom.png, custom-header.png ํŒŒ์ผ์„ ์›ํ•˜๋Š” ์ด๋ฏธ์ง€๋กœ ๊ต์ฒดํ•˜์„ธ์š”.

  • ๊ถŒ์žฅ์‚ฌํ•ญ:

    • Header ์ด๋ฏธ์ง€๋Š” 21:9 ๋น„์œจ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
    • ์ด๋ฏธ์ง€ ์ค‘์•™์—๋Š” ๋ณต์žกํ•œ ์š”์†Œ๊ฐ€ ์—†๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€ ์„ค์ • (์ƒ‰์ƒ):

    • velogit/index.css ์—์„œ .theme-custom ๊ณผ .theme-custom.dark ์˜ ์ƒ‰์ƒ ๊ฐ’์„ ๊ธฐํ˜ธ์— ๋งž๊ฒŒ ์ˆ˜์ •ํ•˜๋ฉด
      ๋ผ์ดํŠธ/๋‹คํฌ ๋ชจ๋“œ์˜ ์ƒ‰์ƒ ํ…Œ๋งˆ๋ฅผ ์ž์œ ๋กญ๊ฒŒ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€ ์„ค์ • (๊ธฐ๋ณธ ํ…Œ๋งˆ ์ง€์ •):

    • ๊ธฐ๋ณธ ์ง„์ž… ์‹œ ์ ์šฉ๋  ํ…Œ๋งˆ๋ฅผ ๋ฐ”๊พธ๊ณ  ์‹ถ๋‹ค๋ฉด
      velogit/src/components/common/layout/footer/ThemeSelectorModal.tsx ์—์„œ ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜์„ธ์š”.

      // before
      const [currentTheme, setCurrentTheme] = useState<string>('default');
      
      // after (์˜ˆ: ๊ธฐ๋ณธ ํ…Œ๋งˆ๋ฅผ 'sakura'๋กœ)
      const [currentTheme, setCurrentTheme] = useState<string>('sakura');
    • ์ค‘์š”: ๊ธฐ๋ณธ ํ…Œ๋งˆ๋Š” ์ตœ์ดˆ ์ง„์ž… ์‹œ ์ ์šฉ๋˜๋Š” ์ดˆ๊ธฐ๊ฐ’์ผ ๋ฟ์ด๋ฉฐ,
      ์ดํ›„ ์‚ฌ์šฉ์ž๊ฐ€ ํ…Œ๋งˆ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉด ๋กœ์ปฌ์Šคํ† ๋ฆฌ์ง€์˜ ๋งˆ์ง€๋ง‰ ํ…Œ๋งˆ ๊ฐ’์ด ํ•ญ์ƒ ์šฐ์„ ๋ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋ฐฉ๋ฌธ์ž๊ฐ€ ์ด์ „์— ์„ ํƒํ–ˆ๋˜ ํ…Œ๋งˆ๊ฐ€ ์žˆ๋‹ค๋ฉด ๊ทธ ๊ฐ’์ด ์ž๋™์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.


2. ๋ธ”๋กœ๊ทธ ํ—ค๋” ์„ค๋ช…๊ธ€

  • ๊ฒฝ๋กœ: velogit/src/data/home.ts
  • ์ˆ˜์ •ํ•  ํ•ญ๋ชฉ:
    • profileImgPath : ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ๊ฒฝ๋กœ
    • blogOwnerDesc : ๋ธ”๋กœ๊ทธ ์†Œ์œ ์ž ์„ค๋ช…
    • blogDesc : ๋ธ”๋กœ๊ทธ ์†Œ๊ฐœ๊ธ€

โžก๏ธ ์ด ๋ฐ์ดํ„ฐ๋“ค์€ ํ™ˆ ํ™”๋ฉด ๋ธ”๋กœ๊ทธ ๋Œ€๋ฌธ์„ ๊พธ๋ฉฐ์ค๋‹ˆ๋‹ค.
์—ฌ๋Ÿฌ๋ถ„์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€์™€ ๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ ์„ค๋ช…๊ธ€์„ ๋„ฃ์–ด์ฃผ์„ธ์š”.


3. ๋ธ”๋กœ๊ทธ ๋ฐฐ๊ฒฝ ์Œ์•…

  • ๊ฒฝ๋กœ: velogit/src/assets/audio
  • ๋ฐฐ๊ฒฝ ์Œ์•…์œผ๋กœ ์‚ฌ์šฉํ•  mp3 ํŒŒ์ผ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”.
  • ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํŒŒ์ผ์„ ๋„ฃ์œผ๋ฉด ์ž๋™์œผ๋กœ ๋žœ๋ค ์žฌ์ƒ๋ฉ๋‹ˆ๋‹ค. ๐ŸŽถ

4. About ํŽ˜์ด์ง€

  • ๊ฒฝ๋กœ: velogit/src/pages/AboutPage.tsx
  • ์ž์œ ๋กญ๊ฒŒ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ๊ฐ€๋Šฅ:
    • ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋„ ๋˜๊ณ 
    • ์ œ๊ณต๋œ ํ…œํ”Œ๋ฆฟ์˜ ํ…์ŠคํŠธ๋งŒ ์ˆ˜์ •ํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค.
  • ์ž๊ธฐ์†Œ๊ฐœ ๋ฐ ํฌํŠธํด๋ฆฌ์˜ค๋ฅผ ์†Œ๊ฐœํ•˜๋Š” ์šฉ๋„๋กœ ๊พธ๋ฉฐ์ฃผ์„ธ์š”.

5. ์˜คํ”ˆ๊ทธ๋ž˜ํ”„ ์„ค์ •

  • ๊ฒฝ๋กœ: velogit/index.html
  • letYuchan ์ด๋ผ๊ณ  ์ ํžŒ ๋ถ€๋ถ„์„ ์—ฌ๋Ÿฌ๋ถ„์˜ GitHub ๊ณ„์ • ์•„์ด๋””๋กœ ๋ฐ”๊ฟ”์ฃผ์„ธ์š”.

โžก๏ธ ๋ธ”๋กœ๊ทธ ๊ณต์œ  ์‹œ ์ธ๋„ค์ผ/๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์— ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.


๐Ÿ“Œ ํ•ด๋‹น ๋‚ด์šฉ์„ GitHub Pages์—๋„ ๋ฐ˜์˜ํ•˜๋ ค๋ฉด, ๋ชจ๋“  ์„ค์ •์„ ๋งˆ์นœ ํ›„ ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ด์ฃผ์„ธ์š”:

pnpm run deploy

๐Ÿ“Œ ์œ„ ์„ค๋ช…์€ ์‹ค์ œ ์•ฑ์˜ Help ๋ชจ๋‹ฌ์—์„œ๋„ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ“ฆ ๋ฆด๋ฆฌ์ฆˆ ๋ฐ ์—…๋ฐ์ดํŠธ ๋‚ด์—ญ

๐Ÿ“Œ ํ˜„์žฌ ๋ฆด๋ฆฌ์ฆˆ

  • v1.0.0 (Beta)
    velogit์˜ ์ฒซ ๊ณต์‹ ๋ฐฐํฌ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค.

๐Ÿ“ ์—…๋ฐ์ดํŠธ ๋‚ด์—ญ

โณ ์•ž์œผ๋กœ์˜ ์—…๋ฐ์ดํŠธ ๋‚ด์—ญ์€ ์ด๊ณณ์— ๊ณ„์† ๊ธฐ๋ก๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.


๐Ÿ›ก๏ธ ๋ผ์ด์„ ์Šค

ยฉ 2025 Velogit โ€” Created by letYuchan
Licensed under CC BY-NC 4.0 (Personal and Non-Commercial Use Only)


๐Ÿค ๊ธฐ์—ฌํ•˜๊ธฐ

  • velogit์€ ๋” ๋‚˜์€ ํ”Œ๋žซํผ์„ ์ง€ํ–ฅํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฒ„๊ทธ ์ œ๋ณด, ๊ธฐ๋Šฅ ์ œ์•ˆ, ์ฝ”๋“œ ๊ธฐ์—ฌ ๋ชจ๋‘ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค!
  • PR -> ์Šน์ธ ํ›„ ๊ธฐ์—ฌ๊ฐ€ ์ตœ์ข… ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.
  • ๋‹ค์Œ ์˜ˆ์‹œ์™€ ๊ฐ™์€ ์ปค๋ฐ‹๋ฉ”์‹œ์ง€ ํ˜•์‹๋ฅผ ์ง€์ผœ์ฃผ์„ธ์š”.
e.g., feat: A๊ธฐ๋Šฅ ์ถ”๊ฐ€

English description โฌ‡๏ธโฌ‡๏ธโฌ‡๏ธ


๐ŸŽฏ Introduction

  • Platform: GitHub Pages + React + Markdown
  • Features: Easy installation, automated deployment, strong customization support
  • Goals:
    • More than just a tech blog โ€” a personal branding tool
    • Manage study notes, knowledge sharing, self-introduction, and portfolio all in one place

โœจ Key Features

๐Ÿ–‹๏ธ Writing Features

velogit goes beyond basic Markdown support by providing developer-friendly authoring tools:

  • 16 authoring helpers
    h1~h4 auto-insertion, Bold, Italic, StrikeThrough, Blockquotes, Lists, Code blocks, Links, Images/Videos, Keyboard tag, Mark tag, Details-Summary, Tables, File uploads, etc.
  • Floating Toolbar
    Appears near your cursor so you donโ€™t break your writing flow.
  • Multilingual + Korean Grammar Correction
    • Supports multiple languages such as English and Japanese
    • Beta: automatic Korean grammar correction
  • Unsaved Content Protection - You can keep up to 5 draft posts - Shows a confirmation dialog when the user accidentally navigates back, refreshes, or closes the tab, preventing loss of unsaved content

๐ŸŽจ Theme System

  • 15 built-in themes + 1 custom theme
  • Light/Dark mode support per theme
  • Easy customization to create your own blog vibe

๐Ÿง˜ Stretching Popup

Developers often suffer from sitting too long.
velogit goes beyond blogging by adding a health-conscious stretching reminder.

  • Set stretching intervals and duration
  • Friendly reminders to keep you moving

๐ŸŽถ Blog Background Music

Break the stereotype of stiff developer blogs.
Add background music to personalize your blog. ๐ŸŽต

Remember to respect copyright when using music files.


๐Ÿชช About Page

Your blog is also a portfolio and introduction space.

  • Summarize your portfolio and self-introduction
  • Customize with Markdown + HTML freely

๐Ÿ‰ Blog Growth Visualization

Make blogging fun with gamified growth features:

  • Blog levels up based on post count
  • Cute arcade-style dragon visualizes progress
  • Track Top 3 categories and total posts at a glance

๐Ÿ’ฌ Comment System (Powered by Utterances)

We have added an issue-based comment system using Utterances.
This allows users to leave comments with a simple GitHub account authentication.

  • Features:

    • Comments are stored and managed as GitHub Issues.
    • Anyone with a GitHub account can post comments.
    • Provides a clean UI that integrates seamlessly with the blog.
  • Important Notes:

    • When posting a comment for the first time, GitHub authentication is required.
    • After authentication, you will be redirected to the Home page.
      โ†’ To continue commenting, you need to re-enter the post detail page.

๐Ÿ‘‰ Once authenticated, commenting will be smooth and convenient from then on.


๐Ÿš€ Usage

1. Prerequisites

Docker is required.

Check installation with:

docker -v
docker run hello-world

2. First Run

After forking, build and start the Docker image:

docker compose up --build -d server

3. Start Dev Server

Run the frontend locally

When running for the first time, install dependencies:

pnpm install

Then, start the development server:

pnpm run dev

4. Post Publishing/Delete

  • After creating/editing a post, click publish/edit button.
    A deployment script command will be copied to your clipboard.
  • Paste and execute it in the velogit root folder to
    automatically deploy to GitHub Pages.

๐Ÿ‘‰ With one command, you can handle build โ†’ commit โ†’ push โ†’ deploy.

  • To delete a post, simply remove the desired file from velogit/posts.

5. GitHub Pages Setup

  • Please register (publish) at least one post for the first time. When you do, the gh-pages branch will be automatically created and deployed.
  • Then go to Settings > Pages in your repository and configure it as shown below, by selecting the gh-pages branch as the Pages source. image
  • The default site address will be: https://github-username.github.io/velogit

6. Keeping Updated

To sync with the original repository, set upstream and pull updates:

git remote add upstream https://github.com/author/velogit.git

Then apply updates with:

git fetch upstream
git merge upstream/master
git push origin master

โš™๏ธ Blog Setup

Modifying configurations beyond the provided settings and deploying the application may constitute a copyright violation.


1. Theme Setup

  • Path: velogit/public/images/system/themes

  • Replace custom.png and custom-header.png with your own images.

  • Recommendations:

    • Use 21:9 ratio for the header.
    • Keep the center area clean/simple.
  • Additional (Colors):
    Edit velogit/index.css to change .theme-custom and .theme-custom.dark color values for Light/Dark theme customization.

  • Additional (Default Theme):
    To change the initial theme, edit:
    velogit/src/components/common/layout/footer/ThemeSelectorModal.tsx

    // default
    const [currentTheme, setCurrentTheme] = useState<string>('default');
    
    // example (default theme set to 'sakura')
    const [currentTheme, setCurrentTheme] = useState<string>('sakura');

    โš ๏ธ Note: After first load, user theme preference is stored in localStorage, which always takes priority.


2. Blog Header Text

  • Path: velogit/src/data/home.ts
  • Update these values:
    • profileImgPath: profile image path
    • blogOwnerDesc: blog owner description
    • blogDesc: blog introduction

3. Background Music

  • Path: velogit/src/assets/audio
  • Add .mp3 files for background music.
  • Multiple files โ†’ random shuffle playback. ๐ŸŽถ

4. About Page

  • Path: velogit/src/pages/AboutPage.tsx
  • Fully customizable:
    • Write your own code
    • Or just edit template text

5. Open Graph Metadata

  • Path: velogit/index.html
  • Replace all letYuchan strings with your GitHub username.

โžก๏ธ Affects shared preview metadata (thumbnail/title/desc).


๐Ÿ“Œ To apply these changes to GitHub Pages, please finish all configurations first, then run:

pnpm run deploy

๐Ÿ“Œ These setup instructions are also available in the appโ€™s Help modal.


๐Ÿ“ฆ Release & Update Notes

๐Ÿ“Œ Current Release

  • v1.0.0 (Beta)
    The very first official release of velogit.

๐Ÿ“ Update History

โณ Future updates will be continuously documented here.


๐Ÿ›ก๏ธ License

ยฉ 2025 velogit โ€” Created by letYuchan
Licensed under CC BY-NC 4.0 (Personal and Non-Commercial Use Only)


๐Ÿค Contributing

  • velogit aims to evolve into a better platform.
  • Bug reports, feature requests, and contributions are welcome!
  • PR โ†’ Contributions will be reflected only after approval.
  • Please follow the commit message format as shown in the examples below.
e.g., feat: add feature A

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published