νκ΅μ΄ | English
리λ¬κ²μμ μν μ€ν μμ€ ν€λ·°μ΄ νλ‘κ·Έλ¨
μ¬μ©μ μ μ ν€ λ§€νκ³Ό μ€νμΌλ§, μμ½κ² μ ν κ°λ₯ν ν리μ , λͺ¨λνκ³ μ§κ΄μ μΈ μΈν°νμ΄μ€λ₯Ό μ 곡ν©λλ€.
demo.mp4
DM Noteλ DJMAX RESPECT Vμμ μ¬μ©νκΈ° μν΄ λ§λ€μ΄μ§ ν€λ·°μ΄ νλ‘κ·Έλ¨μ λλ€. Electronκ³Ό Reactλ‘ κ΅¬μΆ λμμΌλ©° ν€λ³΄λ ννΉμ μν΄ node-global-key-listener-extended ν¨ν€μ§λ₯Ό μ¬μ©ν©λλ€. κ°νΈν μ€μ μΌλ‘ μ€νΈλ¦¬λ°μ΄λ νλ μ΄ μμ μ μ μ ν€ μ λ ₯μ μκ°μ μΌλ‘ 보μ¬μ€ μ μμ΅λλ€. νμ¬λ windows νκ²½λ§ μ§μνλ©°, 리λ¬κ²μ μ΄μΈμ λ€λ₯Έ κ²μμμλ μ¬μ©μ΄ κ°λ₯ν©λλ€.
- μ€μκ° ν€λ³΄λ μ λ ₯ κ°μ§ λ° μκ°ν
- 컀μ€ν ν€ λ§€ν μ€μ
- ν€ μ¬μ΄μ¦ μ‘°μ λ° μΆκ°/μμ
- 그리λ κΈ°λ° ν€ λ°°μΉ
- μ΄λ―Έμ§ ν λΉ μ§μ
- 컀μ€ν CSS μ§μ
- μ¬μ©μ μ€μ μλ μ μ₯
- ν리μ μ μ₯/λΆλ¬μ€κΈ°
- μ°½ μμΉ κ³ μ
- νμ μμ νμ
- 리μ¬μ΄μ¦ κΈ°μ€μ μ ν
- λ ΈνΈ ν¨κ³Ό μμ, ν¬λͺ λ, λΌμ΄λ©, μλ, λμ΄ μ‘°μ
- 리λ²μ€ κΈ°λ₯
- λ€κ΅μ΄ μ§μ (νκΈ, μμ΄)
- κ·Έλν½ λ λλ§ μ΅μ (Direct3D 11/9, OpenGL)
- μ€μ μ΄κΈ°ν
- νλ‘ νΈμλ: React 19 + Typescript + Vite 7
- λ°±μλ: Electron
- μ€νμΌλ§: Tailwind CSS 3
- ν€λ³΄λ ννΉ: node-global-key-listener-extended
- ν¨ν€μ§ λ§€λμ : npm
DmNote/
ββ src/ # μμ€ μ½λ
β ββ main/ # Electron λ©μΈ νλ‘μΈμ€
β β ββ app/ # Application λΆνΈμ€νΈλ©
β β ββ core/ # ipcRouter, windowRegistry
β β ββ domains/ # λλ©μΈ λΌμ°ν
(app, settings, keys, overlay, css, preset, system)
β β β ββ keys/ # ν€ λ§€ν κΈ°λ³Έκ°
β β β ββ positions/ # ν€ ν¬μ§μ
κΈ°λ³Έκ°
β β ββ services/ # μλΉμ€ (ν€λ³΄λ 리μ€λ λ±)
β β ββ store/ # electron-store + zod μ€ν€λ§
β β ββ windows/ # BrowserWindow λνΌ + config
β β ββ preload.ts # contextBridge API λ
ΈμΆ(window.api)
β β ββ main.ts # λ©μΈ μ§μ
μ
β ββ renderer/ # React λ λλ¬
β β ββ components/ # UI μ»΄ν¬λνΈ
β β ββ hooks/ # μν/λκΈ°ν ν
β β ββ stores/ # Zustand μ€ν μ΄
β β ββ windows/ # λ λλ¬ μλμ° (main/overlay)
β β ββ styles/ # μ μ/κ³΅ν΅ μ€νμΌ
β β ββ assets/ # μ μ 리μμ€
β ββ types/ # 곡μ νμ
/μ€ν€λ§
ββ package.json # νλ‘μ νΈ μμ‘΄μ± λ° μ€ν μ€ν¬λ¦½νΈ
ββ tsconfig.json # TypeScript (λ λλ¬/곡μ©) μ€μ
ββ tsconfig.main.json # TypeScript (λ©μΈ) μ μ© μ€μ
ββ vite.config.ts # Vite (λ λλ¬) μ€μ
ββ dist/ # λΉλ κ²°κ³Όλ¬Ό
μ΄ νλ‘μ νΈλ μ μ ν€λ³΄λ ννΉμ μν΄ node-gypλ₯Ό μ΄μ©νλ node-global-key-listener-extended ν¨ν€μ§λ₯Ό μ¬μ©νκ³ μμ΅λλ€. ν΄λΉ ν¨ν€μ§λ λ€μ΄ν°λΈ C++ μ½λλ₯Ό λΉλν΄μΌ νλ―λ‘ λ€μ κ°λ° νκ²½μ΄ μ€μΉλμ΄ μμ΄μΌ ν©λλ€.
- Node.js
- Python 3.x
- Visual Studio Build Tools (C++ λ°μ€ν¬ν± κ°λ° μν¬λ‘λ ν¬ν¨)
μμ κ°λ° νκ²½μ΄ λͺ¨λ μ€λΉλμλ€λ©΄, ν°λ―Έλμμ λ€μ λͺ λ Ήμ΄λ₯Ό μμλλ‘ μ λ ₯νμΈμ.
git clone https://github.com/lee-sihun/DmNote.git
cd DmNote
npm install
npm run startκ°λ° νκ²½μ C++ λΉλ νκ²½ ꡬμ±μ΄ μ΄λ €μ΄ κ²½μ°, ν¨ν€μ§μ μ¬μ λΉλλ λ²μ μ μ¬μ©ν΄μ ν
μ€νΈλ₯Ό μ§νν μ μμ΅λλ€. package.jsonμ postinstall μ€ν¬λ¦½νΈλ₯Ό μ κ±°νκ³ dependencies νλͺ©μ μλμ κ°μ΄ λ³κ²½ν΄μ£ΌμΈμ.
{
"dependencies": {
"node-global-key-listener-extended": "github:lee-sihun/node-global-key-listener#win-keyserver-version"
}
}νμΌμ μμ ν λ€, ν°λ―Έλμμ npm installμ npm run startλ₯Ό μ€νν΄μ£ΌμΈμ.
- κ·Έλν½ λ¬Έμ λ°μ μ μ€μ μμ λ λλ§ μ΅μ μ λ³κ²½ν΄μ£ΌμΈμ.
- OBS μλμ° μΊ‘μ³λ‘ ν¬λ‘λ§ν€ μμ΄ λ°°κ²½μ ν¬λͺ νκ² λΆλ¬μ¬ μ μμ΅λλ€.
- κ²μ νλ©΄ μμ νμν κ²½μ°, νμ μμ νμλ‘ λ°°μΉν λ€ μ€λ²λ μ΄ μ°½ κ³ μ μ νμ±νν΄μ£ΌμΈμ.
- κΈ°λ³Έ μ 곡 ν리μ
, 컀μ€ν
CSS μμ νμΌμ
resources > resourcesν΄λμ μμ΅λλ€. - ν΄λμ€λͺ
ν λΉ μ μ νμλ μ μΈνκ³ μ΄λ¦λ§ μ
λ ₯ν΄μ£ΌμΈμ.(
blue-> o,.blue-> x) - νλ‘κ·Έλ¨ κΈ°λ³Έ μ€μ μ
%appdata%/dm-noteν΄λμconfig.jsonμ μ μ₯λ©λλ€.
μ¬λ¬λΆμ μ°Έμ¬λ₯Ό νμν©λλ€! μμΈν λ΄μ©μ κΈ°μ¬ κ°μ΄λλ₯Ό νμΈν΄μ£ΌμΈμ.


