v1.0.0 배포 준비: CHANGELOG, LICENSE, 프로젝트 메타 파일 추가
- CHANGELOG.md: Phase 1~13 + 랜딩 페이지 전체 변경 이력 - LICENSE: MIT - CONTRIBUTING.md: 개발 환경, 코드 표준, PR 프로세스 - SECURITY.md: 보안 정책, 취약점 보고 절차 - .editorconfig: 에디터 설정 통일 (indent, charset, eol) - .nvmrc: Node.js 20 - .gitattributes: line ending 정규화, 바이너리 선언, linguist 설정 - .gitignore: site/dist, Python, Whisper 모델 등 누락 항목 추가
This commit is contained in:
parent
5892125740
commit
023714442d
8 changed files with 337 additions and 0 deletions
83
CONTRIBUTING.md
Normal file
83
CONTRIBUTING.md
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
# Contributing to D3RO Voice
|
||||
|
||||
Thank you for your interest in contributing to D3RO Voice!
|
||||
|
||||
## Development Setup
|
||||
|
||||
### Prerequisites
|
||||
- Node.js 20+
|
||||
- Python 3.10+ (for faster-whisper sidecar)
|
||||
- Ollama (for LLM features)
|
||||
- Windows 10/11 (primary platform)
|
||||
|
||||
### Getting Started
|
||||
|
||||
```bash
|
||||
# Clone the repository
|
||||
git clone https://gitlab.twentyoz.kr:8443/d3r0/voice.git
|
||||
cd voice
|
||||
|
||||
# Install dependencies
|
||||
npm install
|
||||
|
||||
# Download SoX binary (Windows)
|
||||
npm run setup:sox
|
||||
|
||||
# Start development
|
||||
npm run dev
|
||||
```
|
||||
|
||||
### Project Structure
|
||||
|
||||
```
|
||||
src/
|
||||
main/ # Electron main process (services, IPC, DB)
|
||||
renderer/ # React app (MUI, components, pages)
|
||||
preload/ # contextBridge IPC bridge
|
||||
shared/ # Shared types, IPC channels, errors
|
||||
site/ # Landing page (Vite + React + Tailwind)
|
||||
docs/ # Design documents and phase specs
|
||||
tests/ # Unit tests (vitest)
|
||||
```
|
||||
|
||||
### Code Standards
|
||||
|
||||
- TypeScript strict mode (`noImplicitAny`, `strictNullChecks`)
|
||||
- No `any` types
|
||||
- No `console.log` (use electron-log via LoggerService)
|
||||
- Colors via `d3roPalette` CSS variables (no hardcoded hex in components)
|
||||
- UI strings via `t()` i18n function (no hardcoded Korean/English)
|
||||
- Services: singleton + EventEmitter pattern
|
||||
- IPC channels defined in `src/shared/ipc-channels.ts`
|
||||
|
||||
### Running Tests
|
||||
|
||||
```bash
|
||||
npm run typecheck # Type checking
|
||||
npm run lint # ESLint
|
||||
npm run test # Unit tests
|
||||
```
|
||||
|
||||
### Building
|
||||
|
||||
```bash
|
||||
npm run build # Production build
|
||||
npm run dist # Build + NSIS installer
|
||||
```
|
||||
|
||||
## Design Documents
|
||||
|
||||
Before implementing, always reference:
|
||||
- `docs/design/00-master-architecture.md`
|
||||
- `docs/design/01-service-specifications.md`
|
||||
- `docs/design/02-ipc-and-types.md`
|
||||
- `docs/design/03-db-and-ui.md`
|
||||
|
||||
## Pull Request Process
|
||||
|
||||
1. Create a feature branch from `main`
|
||||
2. Follow the coding standards above
|
||||
3. Ensure `npm run typecheck` passes
|
||||
4. Ensure `npm run test` passes
|
||||
5. Update CHANGELOG.md if applicable
|
||||
6. Submit a merge request with a clear description
|
||||
Loading…
Add table
Add a link
Reference in a new issue