๐ต๏ธโโ๏ธ 'ํ์ด์ ' ์ฒซ์ธ์
repo์ ์ค๋ช ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
hygen is the simple, fast, and scalable code generator that lives in your project.
๊ฒฐ๋ก ์ cli ๊ธฐ๋ฐ ์ค์บํด๋ฉ ๋๊ตฌ๋ผ๋ ๊ฒ์ ๋๋ค.
ejs
๊ณผ front-matter ์ ์ด์ํ ์กฐํฉ์ ์ฌ์ฉํฉ๋๋ค.์ด๋ป๊ฒ ์๋ํฉ๋๊น?
๋จผ์ npm์ ์ฌ์ฉํ์ฌ CLI ๋๊ตฌ๋ฅผ ์ ์ญ์ผ๋ก ์ค์นํฉ๋๋ค.
npm install hygen -g
๊ทธ๋ฐ ๋ค์
hygen init self
๋ฅผ ํธ์ถํ์ฌ ์ค์บํด๋๋ฅผ ์์ฑํ๊ณ , ์ค์บํด๋๋ฅผ ์์ฑํ๊ธฐ ์ํด ์ผ์ข
์ ๋ฉํ ๋ง์ต๋๊น?์ด๋ ๊ฒ ํ๋ฉด
hygen generator new component
๋ฅผ ์คํํ ์ ์์ต๋๋ค.์ด์
_templates
๋ฐ generator
๋๋ ํ ๋ฆฌ๊ฐ ์๋ component
ํด๋๊ฐ ์์ด์ผ ํฉ๋๋ค.์ ๊ตฌ์ฑ ์์๊ฐ ๋๋๋ก ์ฌ์ฉ์ ์ง์ ํ ์ ์๋ ์์ ํ์ผ
_templates/component/hello.ejs.t
์ด ๋ด๋ถ์ ํ์๋ฉ๋๋ค. hello.ejs.t
์ ์ด๋ฆ์ simple.ejs.t
๋ก ๋ฐ๊พธ๊ณ ์ด๊ฒ์ ์์ ๋ฃ์ต๋๋ค.---
to: src/components/<%= name %>.tsx
---
import React from 'react'
export function <%= name %>(props) {
return <h1>Hello, {props.name}</h1>;
}
๊ทธ๋ฐ ๋ค์ ๋ค์์ ์คํํ ์ ์์ต๋๋ค.
hygen component new --name Example
๊ทธ๋ฆฌ๊ณ ์ง์! ์ ๊ตฌ์ฑ ์์๋ฅผ ์ฝ๊ฒ ๋ง๋ค ์ ์์ต๋๋ค.
ํ๋กฌํํธ ์ฌ์ฉ
์์ฃผ ๋ฉ์ง ๊ธฐ๋ฅ ์ค ํ๋๋ ํ๋กฌํํธ ๊ธฐ๋ฅ์ ๋๋ค. ์์ฑ๊ธฐ ๋๋ ํ ๋ฆฌ์
prompt.js
ํ์ผ์ ์ถ๊ฐํ๊ธฐ๋ง ํ๋ฉด ๋ช
๋ น์ ํ๋๊ทธ๋ก ์ ๊ณตํ๋ ๋์ ๋ค๋ฅธ ejs
๋ณ์์ ๋ํด ๋ช
๋ น์ ์คํํ ๋ ํ๋กฌํํธ๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค.์
ํ ๊ฐ์ง ์ข์ ์ถ๊ฐ ๊ธฐ๋ฅ์ ์์ฑ๊ธฐ์ ์ ๋ฉด์์ ์ ๋ช ๋ น์ ์คํํ๋ ์ต์ ์ ๋๋ค. ์ด๊ฒ์ ๋ถ์์ฉ์ ๋ ๋์ ํ์ดํ๋ผ์ด๋์ ํ์ฉํฉ๋๋ค.
--------
sh: echo "hi"
--------
์ด๋ฆฐ ์ง๋ฌธ
๋จธ๋ฆฌ๋ง ์ง์์ผ๋ก .ejs.t vscode ๊ตฌ๋ฌธ์ ์ป์ ์ ์์ต๋๊น? ์๋ง๋ .ejs๋ฅผ ์ฌ์ฉํ์๊ฒ ์ต๋๊น?
.t
ํ์ผ ์ ํ์ ์ ํํ๋ vscode์ ๋ํ ํ ๊ฐ์ง ๊ฐ๋ฅํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ vscode ๊ธฐ๋ณธ ์ค์ ์ ํ์ผ ์ฐ๊ฒฐ์ ์ถ๊ฐํ๋ ๊ฒ์
๋๋ค.{
"files.associations": {
// @see https://dev.to/reggi/using-hygen-3g3i
"*.ejs.t": "html"
}
}
๊ฒฐ๋ก
๋๋ ๊ทธ๊ฒ์ ์ง๊ธ๊น์ง ์ฌ๋ํ๋ค! ์ํฌํ๋ก๊ฐ ํฌ๊ฒ ๊ฐ์ ๋์์ผ๋ฉฐ ๊ณ์ํด์ ์๋ก์ด ์ฌ์ฉ ์ฌ๋ก๋ฅผ ์ฐพ๊ณ ์์ต๋๋ค. โค๏ธโค๏ธโค๏ธโค๏ธโค๏ธ
Reference
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(๐ต๏ธโโ๏ธ 'ํ์ด์ ' ์ฒซ์ธ์), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://dev.to/reggi/using-hygen-3g3iํ ์คํธ๋ฅผ ์์ ๋กญ๊ฒ ๊ณต์ ํ๊ฑฐ๋ ๋ณต์ฌํ ์ ์์ต๋๋ค.ํ์ง๋ง ์ด ๋ฌธ์์ URL์ ์ฐธ์กฐ URL๋ก ๋จ๊ฒจ ๋์ญ์์ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค