skills
๐ ๏ธ ์์ด์ ํธ ์คํฌ
100
ๅฎ่ฃ
ๅฝไปค
npx skhub add --skillset @dalestudy/skillsๅ ๅซ็ๆ่ฝ
Node.js ๋์ Bun ๋ฐํ์ ์ฌ์ฉ์ ์ํ ์คํฌ. ๋ค์ ์ํฉ์์ ์ฌ์ฉ: (1) ์ JavaScript/TypeScript ํ๋ก์ ํธ ์์ฑ ์, (2) package.json ๋๋ ์์กด์ฑ ๊ด๋ จ ์์
์, (3) ์คํฌ๋ฆฝํธ ์คํ ๋๋ ๊ฐ๋ฐ ์๋ฒ ์์ ์, (4) Node.js ํ๋ก์ ํธ๋ฅผ Bun์ผ๋ก ์ ํ ์, (5) 'bun', 'bunx', 'bun.lockb' ํค์๋๊ฐ ํฌํจ๋ ์์
์
00
Git ๋ฒ์ ๊ด๋ฆฌ ๋ชจ๋ฒ ๊ด๋ก ๋ฐ ์ํฌํ๋ก์ฐ ๊ฐ์ด๋. ๋ค์ ์ํฉ์์ ์ฌ์ฉ: (1) Git ์ปค๋ฐ ๋ฉ์์ง ์์ฑ ์ (Conventional Commits ๊ท์น ์ ์ฉ), (2) ๋ธ๋์น ์์ฑ ๋ฐ ๊ด๋ฆฌ ์ (GitHub Flow ๊ธฐ๋ฐ), (3) PR ์์ฑ ๋ฐ ๋ณํฉ ์ ๋ต ์ ํ ์, (4) Git ํ์คํ ๋ฆฌ ์ ๋ฆฌ ์์
์ (rebase, squash, cherry-pick), (5) Merge conflict ํด๊ฒฐ ์, (6) 'git', '.git', 'commit', 'branch', 'merge', 'rebase' ํค์๋๊ฐ ํฌํจ๋ ์์
์
00
GitHub CLI(gh)๋ฅผ ํ์ฉํ GitHub ํ๋ซํผ ์ํธ์์ฉ ๊ฐ์ด๋. ๋ค์ ์ํฉ์์ ์ฌ์ฉ: (1) GitHub ์ด์ ์์ฑ, ์กฐํ, ์์ ์, (2) Pull Request ์์ฑ, ๋ฆฌ๋ทฐ, ๋ณํฉ ์, (3) GitHub ๋ฆด๋ฆฌ์ค ์์ฑ ๋ฐ ๊ด๋ฆฌ ์, (4) ๋ ์ด๋ธ, ๋ง์ผ์คํค ๋ฑ ํ๋ก์ ํธ ๊ด๋ฆฌ ์, (5) GitHub Actions ์ํฌํ๋ก์ฐ ์คํ ๋ฐ ๊ฒฐ๊ณผ ์กฐํ ์, (6) 'gh', 'issue', 'pull request', 'PR', 'release', 'label', 'workflow', 'run' ํค์๋๊ฐ ํฌํจ๋ ์์
์
00
GitHub Actions ์ํฌํ๋ก์ฐ ์์ฑ, ๋ณด์ ๋ฐ ๋ฒ์ ๊ด๋ฆฌ ์คํฌ. ๋ค์ ์ํฉ์์ ์ฌ์ฉ: (1) ์ ์ํฌํ๋ก์ฐ ํ์ผ(.yml) ์์ฑ ์, (2) ๊ธฐ์กด ์ํฌํ๋ก์ฐ ์์ ์, (3) ์ก์
๋ฒ์ ๊ฒํ ๋๋ ์
๋ฐ์ดํธ ์, (4) CI/CD ๋ณด์ ๊ฐ์ฌ ์, (5) 'actions/', 'uses:', 'workflow', '.github/workflows' ํค์๋๊ฐ ํฌํจ๋ ์์
์
00
mcp ์๋ฒ ์ฐ๊ฒฐ ๋ฌธ์ ๋ฅผ ๋ถ์ํ๊ณ ์ต์ specification ๊ธฐ์ค์ผ๋ก ๊ตฌํ์ ๊ฒ์ฆํ๋ค. tools/list ๋๋ tools/call ์ค๋ฅ, stdio sse http transport ์ด์, resources prompts ๋ผ์ฐํ
๋ฌธ์ , inspector ๊ธฐ๋ฐ ์ฌํ ํ
์คํธ๊ฐ ํ์ํ ๋ ์ฌ์ฉํ๋ค.
00
React ์ฑ๋ฅ ์ต์ ํ ๋ฐ ๋ฒ ์คํธ ํ๋ํฐ์ค ์คํฌ. Vercel Engineering ๊ฐ์ด๋ ๊ธฐ๋ฐ, ํ๋ ์์ํฌ ๋น์ข
์. ๋ค์ ์ํฉ์์ ์ฌ์ฉ: (1) React ์ปดํฌ๋ํธ(.tsx, .jsx) ์์ฑ ๋๋ ์์ ์, (2) ์ํ ๊ด๋ฆฌ, hooks, ๋ฆฌ๋ ๋๋ง ์ต์ ํ ์์
์, (3) ๋น๋๊ธฐ ๋ฐ์ดํฐ ํ์นญ ๋๋ Suspense ํจํด ์์
์, (4) ๋ฒ๋ค ์ฌ์ด์ฆ ์ต์ ํ ๋๋ ์ฝ๋ ์คํ๋ฆฌํ
์, (5) 'react', 'useState', 'useEffect', 'useMemo', 'useCallback', 'memo', 'Suspense', 'lazy' ํค์๋๊ฐ ํฌํจ๋ ์์
์
00
DaleStudy/skills ์ ์ฅ์์ ์คํฌ ์์ฑ, ์์ , ๊ฒ์ฆ ์ ์ฌ์ฉ. ๋ค์ ์ํฉ์์ ํ์ฑํ: (1) ์ ์คํฌ ์์ฑ ์์ฒญ ์, (2) skills/ ๋๋ ํ ๋ฆฌ ๋ด SKILL.md ํ์ผ ์์ ์, (3) SKILL.md ๋ณ๊ฒฝ ๊ฒํ ๋๋ ๋ฆฌ๋ทฐ ์, (4) ์คํฌ frontmatter ๋๋ ๋ฉํ๋ฐ์ดํฐ ์์
์, (5) 'skill', 'SKILL.md', 'frontmatter', 'version', 'metadata', 'review', 'skills/' ํค์๋๊ฐ ํฌํจ๋ ์์
์
00
Storybook ์คํ ๋ฆฌ ์์ฑ ๋ฐ CSF 3.0 ๋ฒ ์คํธ ํ๋ํฐ์ค ์คํฌ. ๋ค์ ์ํฉ์์ ์ฌ์ฉ: (1) ์ ์คํ ๋ฆฌ ํ์ผ(.stories.tsx, .stories.ts) ์์ฑ ์, (2) ๊ธฐ์กด ์คํ ๋ฆฌ ์์ ์, (3) Args, Decorators, Parameters ์ค์ ์, (4) Storybook ์ค์ ํ์ผ(.storybook/) ์์
์, (5) 'story', 'stories', 'storybook', 'CSF' ํค์๋๊ฐ ํฌํจ๋ ์์
์
00
React Testing Library ๋ฐ Vitest ๊ธฐ๋ฐ ํ
์คํ
๋ชจ๋ฒ ๊ด๋ก. ๋ค์ ์ํฉ์์ ์ฌ์ฉ: (1) .test.tsx, .test.ts, .spec.tsx, .spec.ts ํ์ผ ์์
์, (2) ์ปดํฌ๋ํธ ํ
์คํธ ์์ฑ ๋๋ ๋ฆฌํฉํ ๋ง ์, (3) 'test', 'testing', 'vitest', 'RTL', 'getByRole', 'userEvent', 'waitFor', 'expect' ํค์๋ ํฌํจ ์์
์, (4) ๋น๋๊ธฐ ๋ก์ง ๋๋ ์ฌ์ฉ์ ์ํธ์์ฉ ํ
์คํธ ์์ฑ ์
00
TypeScript ํ์
์ ์ ๋ฐ ๋ฒ ์คํธ ํ๋ํฐ์ค ์คํฌ. ๋ค์ ์ํฉ์์ ์ฌ์ฉ: (1) TypeScript ํ์ผ(.ts, .tsx) ์์ฑ ๋๋ ์์ ์, (2) ํ์
์ ์(interface, type) ์์
์, (3) tsconfig.json ์ค์ ๋๋ ์ปดํ์ผ๋ฌ ์ต์
์กฐ์ ์, (4) ํ์
์๋ฌ ํด๊ฒฐ ๋๋ ํ์
์์ ์ฑ ๊ฐ์ ์, (5) ์ ๋ค๋ฆญ, ์ ํธ๋ฆฌํฐ ํ์
, ํ์
์กฐ์ ์์
์, (6) 'typescript', 'ts', 'type', 'interface', 'generic' ํค์๋๊ฐ ํฌํจ๋ ์์
์
00