Skip to content

y0ngha/siglens

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3,727 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Siglens

Status License

Vercel Upstash Neon Resend Cloudflare

Next.js React TypeScript Node.js

๋ฏธ๊ตญ ์ฃผ์‹ AI ๊ธฐ์ˆ ์  ๋ถ„์„ ํ”Œ๋žซํผ

Website Docs Issues


What Is Siglens?

Siglens๋Š” ๋ณต์žกํ•œ ๋ฏธ๊ตญ ์ฃผ์‹ ๊ธฐ์ˆ ์  ๋ถ„์„์„ AI๊ฐ€ ๋Œ€์‹  ์ฒ˜๋ฆฌํ•ด์ฃผ๋Š” ๋ถ„์„ ์ „์šฉ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

์ด๋™ํ‰๊ท , MACD, RSI, ๋ณผ๋ฆฐ์ € ๋ฐด๋“œ, DMI, ์บ”๋“ค ํŒจํ„ด, ์ฐจํŠธ ํŒจํ„ด์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ ์ง€ํ‘œ๋ฅผ ๋™์‹œ์— ํ•ด์„ํ•ด์•ผ ํ•˜๋Š” ์ž‘์—…์„ ์ž๋™ํ™”ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ํ‹ฐ์ปค๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์ฐจํŠธ, ์ธ๋””์ผ€์ดํ„ฐ, AI ๋ถ„์„ ๋ฆฌํฌํŠธ, ์˜ต์…˜ ์‹œ์žฅ ํ•ด์„, ๋‰ด์Šค/ํŽ€๋”๋ฉ˜ํ„ธ ์š”์•ฝ์„ ํ•œ ํ™”๋ฉด์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์กด ๋ฐฉ์‹    ๋ณด์กฐ์ง€ํ‘œ ์ˆ˜๋™ ์ถ”๊ฐ€ -> ๊ฑฐ๋ž˜๋Ÿ‰ ๋ถ„์„ -> ํŒจํ„ด ํ•ด์„ -> ์ข…ํ•ฉ ํŒ๋‹จ
Siglens     ํ‹ฐ์ปค ์ž…๋ ฅ -> ์ฐจํŠธ/์ง€ํ‘œ ์ž๋™ ๋ Œ๋” -> AI ์ข…ํ•ฉ ๋ถ„์„ ๋ฆฌํฌํŠธ

Siglens๋Š” ์ฃผ๋ฌธ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ถ„์„ ์ •๋ณด๋งŒ ์ œ๊ณตํ•˜๋ฉฐ, ํˆฌ์ž ๊ฒฐ์ •์€ ์‚ฌ์šฉ์ž ๋ณธ์ธ์˜ ์ฑ…์ž„์ž…๋‹ˆ๋‹ค.

Status

Siglens๋Š” ํ˜„์žฌ siglens.io์—์„œ ์ •์‹ ๋ฐฐํฌ ์ค‘์ž…๋‹ˆ๋‹ค.

Core Features

  • ์ฐจํŠธ: Lightweight Charts v5 ๊ธฐ๋ฐ˜ ์บ”๋“ค, ๊ฑฐ๋ž˜๋Ÿ‰, ๋ณด์กฐ์ง€ํ‘œ ๋ Œ๋”๋ง๊ณผ 5๋ถ„๋ด‰~์ผ๋ด‰ ๋ฉ€ํ‹ฐ ํƒ€์ž„ํ”„๋ ˆ์ž„
  • ์ธ๋””์ผ€์ดํ„ฐ: RSI, MACD, ๋ณผ๋ฆฐ์ € ๋ฐด๋“œ, ADX, DMI, Stochastic, StochRSI, CCI, VWAP, MA, EMA, Volume Profile, Ichimoku Cloud, ATR, Donchian/Keltner Channel, SuperTrend, OBV, CMF, MFI, Parabolic SAR, Williams %R, Squeeze Momentum, Smart Money Concepts ๋“ฑ
  • ์บ”๋“ค/์ฐจํŠธ ํŒจํ„ด: ๋‹จ์ผ ์บ”๋“ค 15์ข…, ๋ฉ€ํ‹ฐ ์บ”๋“ค 30์ข…, ํ—ค๋“œ์•ค์ˆ„๋”, ์๊ธฐ, ์ด์ค‘์ฒœ์žฅ/๋ฐ”๋‹ฅ, ์‚ผ๊ฐ์ˆ˜๋ ด, ํ”Œ๋ž˜๊ทธ, ์ปต์•คํ•ธ๋“ค ๋“ฑ Skills ๊ธฐ๋ฐ˜ ๊ฐ์ง€
  • AI ์ข…ํ•ฉ ๋ถ„์„: ๊ธฐ์ˆ ์  ๋ถ„์„, ํŽ€๋”๋ฉ˜ํ„ธ, ๋‰ด์Šค, ๊ณตํฌํƒ์š•, ์˜ต์…˜ ์‹œ์žฅ์„ ํ†ตํ•ฉํ•œ ํ•œ๊ตญ์–ด ๋ฆฌํฌํŠธ
  • ์˜ต์…˜ ๋ถ„์„: Max Pain, Put/Call Ratio, ATM IV, Implied Move, Strike๋ณ„ Open Interest ๋ถ„ํฌ ํ•ด์„
  • AI ๋ชจ๋ธ ์„ ํƒ: Claude, Gemini, ChatGPT ๋ชจ๋ธ์„ ํŽ˜์ด์ง€๋ณ„๋กœ ์„ ํƒ
  • BYOK: Anthropic, Google, OpenAI API Key๋ฅผ ์‚ฌ์šฉ์ž ๊ณ„์ •์— ์•”ํ˜ธํ™” ์ €์žฅํ•ด ์ž์ฒด ํ‚ค๋กœ ํ˜ธ์ถœ
  • ํšŒ์› ๊ธฐ๋Šฅ: ๋น„ํšŒ์› ๊ธฐ๋ณธ ์‚ฌ์šฉ, ํšŒ์› ๊ฐ€์ž… ์‹œ tier ๊ธฐ๋ฐ˜ ๋ชจ๋ธ/ํ•œ๋„/BYOK ๊ธฐ๋Šฅ ์ œ๊ณต
  • AI ์ฑ—๋ด‡: ๋ถ„์„ ๊ฒฐ๊ณผ๋ฅผ ์ปจํ…์ŠคํŠธ๋กœ ์ด์–ด๊ฐ€๋Š” ์ž์—ฐ์–ด ํ›„์† ์งˆ๋ฌธ
  • ์‹œ์žฅ ํ˜„ํ™ฉ ๋Œ€์‹œ๋ณด๋“œ: 11๊ฐœ ์„นํ„ฐ 200+ ์ข…๋ชฉ์˜ ๊ณจ๋“ ํฌ๋กœ์Šค, RSI ๋‹ค์ด๋ฒ„์ „์Šค, ๋ณผ๋ฆฐ์ € ์Šคํ€ด์ฆˆ ์Šค์บ”
  • AI ๋ฐฑํ…Œ์ŠคํŒ…: 2024.04~2026.04 ๊ธฐ๊ฐ„์˜ ๋ถ„์„ ๊ฒฐ๊ณผ 100๊ฑด์— ๋Œ€ํ•œ ์‹ค์ œ ์ˆ˜์ต๋ฅ  ๊ฒ€์ฆ

Main Pages

๊ฒฝ๋กœ ์„ค๋ช…
/[symbol] ์ข…๋ชฉ๋ณ„ ์ฐจํŠธ, ๊ธฐ์ˆ ์  ๋ถ„์„, AI ๋ฆฌํฌํŠธ
/[symbol]/fundamental ์žฌ๋ฌด, ๋ฐธ๋ฅ˜์—์ด์…˜, ์• ๋„๋ฆฌ์ŠคํŠธ ์ปจ์„ผ์„œ์Šค ๊ธฐ๋ฐ˜ ํŽ€๋”๋ฉ˜ํ„ธ ๋ถ„์„
/[symbol]/news ๋‰ด์Šค์™€ ์–ด๋‹ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ๋ถ„์„
/[symbol]/fear-greed ์ข…๋ชฉ๋ณ„ ๊ณตํฌํƒ์š• ์ง€์ˆ˜
/[symbol]/options ์˜ต์…˜ ์ฒด์ธ, OI ๋ถ„ํฌ, Max Pain, IV ๊ธฐ๋ฐ˜ ๋ถ„์„
/[symbol]/overall ๊ธฐ์ˆ /ํŽ€๋”๋ฉ˜ํ„ธ/๋‰ด์Šค/์˜ต์…˜์„ ํ•ฉ์นœ ์ข…ํ•ฉ ๋ถ„์„
/market ์„นํ„ฐ๋ณ„ ์‹œ์žฅ ์‹ ํ˜ธ ๋Œ€์‹œ๋ณด๋“œ
/backtesting AI ๋ถ„์„ ๋ฐฑํ…Œ์ŠคํŒ… ๊ฒฐ๊ณผ

Data Sources

๋ฐ์ดํ„ฐ ์ถœ์ฒ˜ ๋น„๊ณ 
์‹œ์„ธ OHLCV Financial Modeling Prep 5๋ถ„๋ด‰~์ผ๋ด‰ ๋ฉ€ํ‹ฐ ํƒ€์ž„ํ”„๋ ˆ์ž„, ์ตœ๋Œ€ 15๋ถ„ ์ง€์—ฐ
ํŽ€๋”๋ฉ˜ํ„ธ FMP /stable API PER, ROE, EPS, ์ปจ์„ผ์„œ์Šค, ๋ชฉํ‘œ๊ฐ€
๋‰ด์Šค/์–ด๋‹ FMP /stable API ๋‰ด์Šค sentiment๋Š” Gemini Flash-Lite๋กœ ์ž์ฒด ๋ถ„์„
์˜ต์…˜ ์ฒด์ธ yahoo-finance2 ์Šค๋ƒ…์ƒท ๊ธฐ๋ฐ˜ ์˜ต์…˜ ์ฒด์ธ, OI, IV, Greeks

External Services

์ฃผ์š” ์™ธ๋ถ€ ์ธํ”„๋ผ ์˜์กด์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์„œ๋น„์Šค ์šฉ๋„
Vercel Next.js ๋ฐฐํฌ, Edge/Serverless ์‹คํ–‰
Upstash Redis ๊ธฐ๋ฐ˜ ๋ถ„์„ ์บ์‹œ, Job ์ƒํƒœ, ์ด๋ฉ”์ผ ํ† ํฐ ์ €์žฅ
Neon PostgreSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
Resend ์ด๋ฉ”์ผ ์ธ์ฆ๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์„ค์ • ๋ฉ”์ผ ๋ฐœ์†ก
Cloudflare DNS, edge ๋ณด์•ˆ, ์บ์‹œ/ํŠธ๋ž˜ํ”ฝ ๊ด€๋ฆฌ

Tech Stack

์˜์—ญ ๊ธฐ์ˆ 
Framework Next.js 16.2, App Router, Turbopack, React Compiler
UI React 19.2, Tailwind CSS 4
Chart Lightweight Charts v5, ์ž์ฒด SVG ์˜ต์…˜ OI ์ฐจํŠธ
State TanStack Query v5
AI Anthropic Claude, Google Gemini, OpenAI ChatGPT
Auth bcryptjs, Google OAuth, Kakao OAuth, ์•”ํ˜ธํ™” ์„ธ์…˜ ์ฟ ํ‚ค
Database Drizzle ORM, Neon PostgreSQL
Cache Upstash Redis
Testing Vitest, Testing Library, jsdom
Language TypeScript 5
Package Manager yarn 4.12.0
Runtime Node.js 25.2.1
Deploy Vercel, Cloudflare, Cloud Run worker

Quick Start

Prerequisites

Node.js 25.2.1
yarn 4.12.0

Installation

git clone https://github.com/y0ngha/siglens.git
cd siglens
yarn install

Environment

cp .env.example .env.local

ํ•„์ˆ˜ ํ™˜๊ฒฝ๋ณ€์ˆ˜:

๋ณ€์ˆ˜ ๋ฐœ๊ธ‰์ฒ˜ ์šฉ๋„
FMP_API_KEY Financial Modeling Prep ์‹œ์„ธ, ์ข…๋ชฉ, ํŽ€๋”๋ฉ˜ํ„ธ, ๋‰ด์Šค ๋ฐ์ดํ„ฐ
GEMINI_CHAT_API_KEY Google AI Studio Gemini ๋ชจ๋ธ, ์ฑ—๋ด‡, ์˜ต์…˜ ํ•ด์„
ANTHROPIC_CHAT_API_KEY Anthropic Console Claude ๋ชจ๋ธ
OPENAI_CHAT_API_KEY OpenAI Platform ChatGPT ๋ชจ๋ธ
UPSTASH_REDIS_REST_URL / UPSTASH_REDIS_REST_TOKEN Upstash Redis ์บ์‹œ์™€ Job ์ƒํƒœ
DATABASE_URL Neon PostgreSQL
OAUTH_TOKEN_ENCRYPTION_KEY / LLM_API_KEY_ENCRYPTION_KEY openssl rand -hex 32 DB ์ €์žฅ ํ† ํฐ/API ํ‚ค ์•”ํ˜ธํ™”
CRON_SECRET ์ง์ ‘ ์ƒ์„ฑ cron/action ๋ณดํ˜ธ์šฉ bearer token

์„ ํƒ ํ™˜๊ฒฝ๋ณ€์ˆ˜:

๋ณ€์ˆ˜ ์šฉ๋„
GEMINI_CHAT_FREE_API_KEY Gemini free quota fallback
TRANSLATE_API_KEY / TRANSLATE_FREE_API_KEY ํ•œ๊ตญ์–ด ์ข…๋ชฉ๋ช… ๋ฒˆ์—ญ
GOOGLE_CLIENT_ID / GOOGLE_CLIENT_SECRET Google OAuth ๋กœ๊ทธ์ธ
KAKAO_REST_API_KEY / KAKAO_CLIENT_SECRET Kakao OAuth ๋กœ๊ทธ์ธ
RESEND_API_KEY / EMAIL_FROM ์ด๋ฉ”์ผ ๋ฐœ์†ก
NEXT_PUBLIC_SITE_URL ์‚ฌ์ดํŠธ canonical URL
NEXT_PUBLIC_ADSENSE_* Google AdSense
SIGLENS_GITHUB_TOKEN @y0ngha/siglens-core ์„ค์น˜์šฉ GitHub Packages token
WORKER_URL / WORKER_SECRET Cloud Run worker ํ˜ธ์ถœ

Development Server

yarn dev

http://localhost:4200 ์ ‘์†

Architecture

Siglens๋Š” Feature-Sliced Design 6-layer ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

app -> pages -> widgets -> features -> entities -> shared
                                                   ^
                           @y0ngha/siglens-core๋Š” ๋ชจ๋“  ๋ ˆ์ด์–ด์—์„œ ์ง์ ‘ import ๊ฐ€๋Šฅ
siglens/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ app/              Next.js App Router, RSC, Route Handler
โ”‚   โ”œโ”€โ”€ widgets/          ์ฐจํŠธ, ๋ถ„์„ ํŒจ๋„, ๋Œ€์‹œ๋ณด๋“œ, ํŽ˜์ด์ง€ ์กฐํ•ฉ UI
โ”‚   โ”œโ”€โ”€ features/         ์ธ์ฆ, ๊ฒ€์ƒ‰, ์ฑ„ํŒ…, premium gate ๋“ฑ ์‚ฌ์šฉ์ž ๊ธฐ๋Šฅ
โ”‚   โ”œโ”€โ”€ entities/         user, session, bars, analysis, ticker ๋“ฑ ๋„๋ฉ”์ธ ์—”ํ‹ฐํ‹ฐ
โ”‚   โ””โ”€โ”€ shared/           ๊ณตํ†ต UI, config, db, email, api, hooks, lib
โ”œโ”€โ”€ skills/               ๋ถ„์„ ๊ธฐ๋ฒ• ์ •์˜ Markdown
โ”œโ”€โ”€ docs/                 ์•„ํ‚คํ…์ฒ˜, ๋„๋ฉ”์ธ, ์ปจ๋ฒค์…˜ ๋ฌธ์„œ
โ””โ”€โ”€ refs/                 ๋ณด์กฐ์ง€ํ‘œ์™€ ํˆฌ์ž ์ด๋ก  ๋ ˆํผ๋Ÿฐ์Šค

๋ถ„์„ ๋„๋ฉ”์ธ ๋กœ์ง์˜ ๋ณธ์ฒด๋Š” @y0ngha/siglens-core ํŒจํ‚ค์ง€์— ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํŒจํ‚ค์ง€๋Š” ์ผ๋ฐ˜ ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์•„๋‹ˆ๋ผ Siglens ๋ถ„์„ ๋กœ์ง์„ ๋ถ„๋ฆฌํ•œ ์ฝ”์–ด ํŒจํ‚ค์ง€์ด๋ฏ€๋กœ ๋ชจ๋“  FSD ๋ ˆ์ด์–ด์—์„œ ์ง์ ‘ importํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž์„ธํ•œ ๊ทœ์น™์€ ARCHITECTURE.md์™€ SCOPE.md๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

Skills System

๋ถ„์„ ๊ธฐ๋ฒ•์€ ์ฝ”๋“œ๊ฐ€ ์•„๋‹ˆ๋ผ skills/ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ Markdown ํŒŒ์ผ๋กœ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

/skills/<category>/my-strategy.md ํŒŒ์ผ ์ถ”๊ฐ€ -> ์ƒˆ๋กœ์šด ๋ถ„์„ ๊ธฐ๋ฒ• ์ ์šฉ

entities/skill์ด Markdown ํŒŒ์ผ์„ ์ฝ๊ณ , ํŒŒ์‹ฑ๋œ Skill ๋ฐ์ดํ„ฐ๊ฐ€ @y0ngha/siglens-core์˜ ํ”„๋กฌํ”„ํŠธ ๋นŒ๋”์— ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค. ๋„๋ฉ”์ธ ๊ณ„์‚ฐ์‹์„ ์ˆ˜์ •ํ•˜์ง€ ์•Š๊ณ ๋„ ๋ถ„์„ ๊ธฐ๋ฒ•์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๋ณด์™„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ ์นดํ…Œ๊ณ ๋ฆฌ:

  • skills/patterns/: ์ฐจํŠธ ํŒจํ„ด
  • skills/indicators/: ๋ณด์กฐ์ง€ํ‘œ ์‹œ๊ทธ๋„ ํ•ด์„
  • skills/strategies/: ์—˜๋ฆฌ์–ดํŠธ ํŒŒ๋™, ๋Œ€์ˆœํ™˜ ๋ถ„์„ ๋“ฑ
  • skills/support-resistance/: ํ”ผ๋ณด๋‚˜์น˜, ํ”ผ๋ด‡ํฌ์ธํŠธ
  • skills/candlesticks/: ์บ”๋“ค ํŒจํ„ด ๊ต์œก
  • skills/fundamental/: ๊ฐ€์น˜, ์„ฑ์žฅ, ํ€„๋ฆฌํ‹ฐ ํˆฌ์ž ๊ด€์ 
  • skills/news/: ์ด๋ฒคํŠธ ๋“œ๋ฆฌ๋ธ, ๋งคํฌ๋กœ ์˜ํ–ฅ, ์–ด๋‹ ๋ฆฌ์•ก์…˜

Documentation

๋ฌธ์„œ ๋‚ด์šฉ
SERVICE.md ์„œ๋น„์Šค ๊ฐœ์š”, ๋Œ€์ƒ ์‚ฌ์šฉ์ž, ๊ธฐ์ˆ  ์Šคํƒ, Skills ์‹œ์Šคํ…œ
ARCHITECTURE.md FSD ๋ ˆ์ด์–ด ๊ตฌ์กฐ, ์˜์กด์„ฑ ๊ทœ์น™, ๋ฐ์ดํ„ฐ ํ๋ฆ„
SCOPE.md siglens์™€ siglens-core์˜ ์ฑ…์ž„ ๋ถ„๋ฆฌ
AUTH.md ์ธ์ฆ, ์„ธ์…˜, OAuth, ์ด๋ฉ”์ผ ํ† ํฐ ํ๋ฆ„
DOMAIN.md ์ธ๋””์ผ€์ดํ„ฐ ๊ณ„์‚ฐ ๋ช…์„ธ, ์บ”๋“ค ํŒจํ„ด, Skills ์‹œ์Šคํ…œ
API.md ๋ฐ์ดํ„ฐ/AI API์™€ ํ™˜๊ฒฝ๋ณ€์ˆ˜
CONVENTIONS.md ์ฝ”๋”ฉ ์ปจ๋ฒค์…˜, ๋„ค์ด๋ฐ, ํ…Œ์ŠคํŠธ ์ •์ฑ…
E2E.md Playwright E2E ํ•˜๋‹ˆ์Šค ๊ตฌ์กฐ, ๋กœ์ปฌ/CI ์‹คํ–‰, ์ŠคํŽ™ ์ž‘์„ฑ ๊ฐ€์ด๋“œ
DESIGN.md ์ปฌ๋Ÿฌ ์‹œ์Šคํ…œ, Tailwind ์„ค์ •, ์ฐจํŠธ ์ปฌ๋Ÿฌ ์ƒ์ˆ˜
GIT_CONVENTIONS.md ๋ธŒ๋žœ์น˜, ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€, PR ๊ทœ์น™
MISTAKES.md ๋ฐ˜๋ณต ์‹ค์ˆ˜์™€ ๋ฐฉ์ง€ ๊ทœ์น™

Testing

yarn test                    # ์ „์ฒด ํ…Œ์ŠคํŠธ
yarn test-watch              # watch
yarn test-coverage           # ์ปค๋ฒ„๋ฆฌ์ง€ ํฌํ•จ
yarn test-coverage-report    # ์ƒ์„ธ ์ปค๋ฒ„๋ฆฌ์ง€ ๋ฆฌํฌํŠธ

์ปค๋ฒ„๋ฆฌ์ง€ ๋ชฉํ‘œ๋Š” ์ „์ฒด FSD ๋ ˆ์ด์–ด ๊ธฐ์ค€ 90%์ž…๋‹ˆ๋‹ค. ํ˜„์žฌ Vitest ์„ค์ •์€ entities/, features/, shared/, widgets/, app/, src/proxy.ts๋ฅผ ์ปค๋ฒ„๋ฆฌ์ง€ ์ธก์ • ๋Œ€์ƒ์œผ๋กœ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ ๋ธŒ๋ผ์šฐ์ €๋กœ ์‚ฌ์šฉ์ž ์—ฌ์ •์„ ๊ฒ€์ฆํ•˜๋Š” Playwright E2E ์Šค์œ„ํŠธ๋Š” Vitest ์œ„์— ๋ณ„๋„๋กœ ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค. ํ•˜๋‹ˆ์Šค ๊ตฌ์กฐ์™€ ๋กœ์ปฌ/CI ์‹คํ–‰ ๋ฐฉ๋ฒ•์€ E2E.md๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

Commands

yarn dev               # ๊ฐœ๋ฐœ ์„œ๋ฒ„, port 4200
yarn build             # ํ”„๋กœ๋•์…˜ ๋นŒ๋“œ
yarn lint              # ESLint
yarn lint:fix
yarn lint:style        # Stylelint
yarn lint:style-fix
yarn typecheck         # TypeScript
yarn format            # Prettier

ํŒจํ‚ค์ง€ ์„ค์น˜๋Š” ํ•ญ์ƒ yarn์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. npm๊ณผ pnpm์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Contributing

์•„์ง ์™ธ๋ถ€ ์ฝ”๋“œ ๊ธฐ์—ฌ ํ”„๋กœ์„ธ์Šค๋Š” ์ •์‹์œผ๋กœ ์—ด๋ ค ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฒ„๊ทธ ๋ฆฌํฌํŠธ๋‚˜ ์ œ์•ˆ์€ Issues๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š”.

Skills ๊ธฐ์—ฌ๋„ ์•„์ง ๊ณต๊ฐœ๋œ ๋ฆฌ๋ทฐ/๋จธ์ง€ ์›Œํฌํ”Œ๋กœ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. skills/ ๋””๋ ‰ํ„ฐ๋ฆฌ์— Markdown ํŒŒ์ผ ํ•˜๋‚˜๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ถ„์„ ๊ธฐ๋ฒ•์„ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋˜์–ด ์žˆ์ง€๋งŒ, frontmatter ํ‘œ์ค€๊ณผ ๊ฒ€์ฆ ์ ˆ์ฐจ๊ฐ€ ์ •๋ฆฌ๋œ ๋’ค ๊ธฐ์—ฌ ๊ฐ€์ด๋“œ๋ฅผ ๊ณต๊ฐœํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

License

PolyForm Noncommercial License 1.0.0