Skip to content

zzzRYT/matmal

Repository files navigation

matmal

간편한 한국어 맞춤법 검사 데스크탑 앱

개요

  • matmal은 Electron + Vite + React 기반의 데스크탑 애플리케이션입니다.
  • 로컬 또는 외부 맞춤법/문법 검사 API와 연동하여 한국어 텍스트 검사 기능을 제공합니다.

빠른 시작 (개발)

요구사항: Node.js 18+ (권장 20), npm 또는 yarn

  1. 의존성 설치
npm ci
  1. 개발 서버 실행 (Renderer + Electron 개발 모드)
npm run dev
# 또는
npm run start

참고: npm run dev는 Vite 개발 서버만, npm run start는 Electron Forge로 앱을 실행합니다.

포매팅 (Prettier)

프로젝트는 코드 포맷터로 Prettier를 사용합니다. PR을 제출하기 전에 포맷 검사를 수행하세요.

  • 포맷 검사:
npx prettier --check "**/*.{ts,tsx,js,jsx,json,css,md,html}"
  • 자동 포맷:
npx prettier --write "**/*.{ts,tsx,js,jsx,json,css,md,html}"

CI는 PR에서 Prettier 검사를 실행합니다. 로컬 에디터에서 자동 포맷을 활성화하면 개발이 편리합니다.

사용 가능한 명령어 (Commands)

아래는 이 리포지토리에서 빈번하게 사용하는 npm 스크립트와 설명입니다. PR을 열기 전에 적어도 build, lint, format:check를 실행해 주세요.

  • 의존성 설치
npm ci
  • 개발 서버 (Vite) 실행
npm run dev
  • Electron으로 앱 실행 (개발용)
npm run start
  • 빌드 (TypeScript 컴파일 + Vite 빌드)
npm run build
  • ESLint 검사
npm run lint
  • Prettier 포맷 자동 적용
npm run format
  • Prettier 포맷 검사 (CI에서도 사용)
npm run format:check
  • Electron 패키지 생성
npm run package
  • 플랫폼별 설치파일 생성
npm run make
  • GitHub Release로 배포
npm run publish

노트:

  • npm run publish를 사용하려면 레포지토리 config.forge.publishers 설정 및 CI/로컬 환경에 GITHUB_TOKEN이 설정되어야 합니다.
  • 로컬에서 포맷 및 린트 자동화를 원하면 husky + lint-staged 설정을 사용해 커밋 훅을 추가하세요. 자세한 내용은 CONTRIBUTING.md를 참고하세요.

빌드 및 배포

  1. 빌드
npm run build
  1. Electron 패키지 생성
npm run package
  1. 설치 파일(플랫폼별) 생성
npm run make
  1. GitHub Release에 배포
npm run publish

publish의 경우, main브랜치에 merge되면 자동으로 실행됩니다. 이 때, package.json파일의 version을 따라갑니다. 때문에 버전업 전 package.json파일 확인이 필요합니다.

기여

기여를 환영합니다! 자세한 안내는 CONTRIBUTING.md를 참고하세요.

라이선스

MIT

About

"맞말" 레포지토리

Resources

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages