비개발자에서 개발자로: 오픈소스 앱 개발 여정
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
앱 개발
대상자
- 초보 개발자 및 비개발자 대상
- 난이도: 중간 수준 (기초 프로그래밍 지식 필요)
핵심 요약
- React + Electron 기반 오픈소스 앱(iSpeakerReact) 개발 성공
- AngularJS → Vue → React 전환 과정에서 학습한 핵심 교훈
- Tailwind CSS + daisyUI로 UI 재디자인 및 로컬라이제이션 지원
섹션별 세부 요약
- 프로젝트 시작 배경
- 2015년 Oxford 사전 CD-ROM 앱을 기반으로 개발 시작
- AngularJS와 jQuery로 작성된 원본 앱의 한계점 발견
- 브라우저 호환성 개선을 위해 코드 수정 시도
- 기존 기술 스택의 한계
- AngularJS의 2022년 퇴출로 유지보수 어려움 발생
- Vue.js 도입 실패 (Bootstrap과의 호환성 문제)
- Angular → Vue → React 전환 과정에서 학습한 유지보수 원칙 강조
- React 기반 현대화 작업
- 2024년 ChatGPT 도입 후 Create React App 사용
- iOS 16에서 오디오 재생 문제 해결을 통한 Vite 도입
- Electron으로 오프라인 사용 지원 (파일 크기 3GB → 700MB 감소)
- 로컬라이제이션 및 디자인 최적화
- Crowdin → Weblate 전환으로 오픈소스 로컬라이제이션 지원
- Tailwind CSS + daisyUI로 UI 재디자인 (초록색 주요 색상 사용)
- Oxford 3000/5000 단어 목록 기반 'Word 섹션' 추가
- 자동화 및 확장성 고려
- GitHub Releases를 통한 빌드 자동화 구현
- Vite의 빠른 빌드 속도로 개발 생산성 향상
- Electron으로 크로스 플랫폼 호환성 확보
결론
- *"비개발자도 도구와 지속적인 학습을 통해 오픈소스 프로젝트를 성공시킬 수 있다"**는 핵심 메시지 전달. React + Vite + Electron 기술 스택 선택, Tailwind CSS로 UI 개선, Weblate로 로컬라이제이션 구현 등 실무 적용 팁 강조.