Skip to content

Project Structure

good-bad-code edited this page Sep 20, 2026 · 2 revisions

📁 Project Structure

Entry-Sync의 전체 프로젝트 구조와 주요 파일의 역할을 설명합니다.


🌳 전체 구조

Entry-Sync/
│
├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.yml
│   │   ├── feature_request.yml
│   │   └── config.yml
│   │
│   └── PULL_REQUEST_TEMPLATE.md
│
├── extension/
│   ├── icons/
│   ├── manifest.json
│   ├── content.js
│   ├── inject.js
│   ├── popup.html
│   └── popup.js
│
├── README.md
├── CONTRIBUTING.md
├── CODE_OF_CONDUCT.md
├── SECURITY.md
├── LICENSE
└── 개인정보처리방침.md

📂 .github/

GitHub Repository의 프로젝트 관리 설정을 저장하는 디렉터리입니다.

ISSUE_TEMPLATE/

Issue를 작성할 때 사용할 수 있는 템플릿을 관리합니다.

bug_report.yml

버그를 제보하기 위한 Issue Form입니다.

브라우저, 운영체제, Entry-Sync 버전, 재현 방법 등의 정보를 입력할 수 있습니다.

feature_request.yml

새로운 기능이나 개선 사항을 제안하기 위한 Issue Form입니다.

config.yml

Issue 생성 화면의 동작과 관련된 설정입니다.

현재는 일반적인 빈 Issue 생성을 제한하고 Discussions와 Security Policy를 안내합니다.


PULL_REQUEST_TEMPLATE.md

Pull Request를 생성할 때 자동으로 표시되는 템플릿입니다.

변경 사항, 변경 이유, 테스트 결과, 관련 Issue 및 체크리스트 등을 작성할 수 있습니다.


🧩 extension/

Entry-Sync Chrome Extension의 실제 소스 코드가 위치한 디렉터리입니다.

Entry-Sync의 주요 기능과 사용자 인터페이스가 이 디렉터리에서 관리됩니다.


manifest.json

Chrome Extension의 기본 설정 파일입니다.

확장 프로그램의 이름, 버전, 권한, 실행할 스크립트 등의 정보를 정의합니다.


content.js

Entry 웹 페이지에서 실행되며 페이지와 확장 프로그램 사이의 기능을 연결하는 역할을 합니다.

Entry 페이지의 데이터를 확인하거나 필요한 동작을 수행하는 코드가 포함될 수 있습니다.


inject.js

웹 페이지의 실행 환경에 필요한 코드를 주입하는 역할을 합니다.

페이지와 Extension 환경 사이에서 필요한 기능을 연결하는 데 사용됩니다.


popup.html

Chrome Extension 아이콘을 클릭했을 때 표시되는 Popup UI의 HTML 파일입니다.

Entry-Sync의 사용자 인터페이스 구조를 정의합니다.


popup.js

Popup에서 발생하는 사용자 동작을 처리하는 JavaScript 파일입니다.

Popup UI와 Entry-Sync의 기능을 연결합니다.


icons/

Chrome Extension에서 사용하는 아이콘 파일을 저장합니다.


📄 Root Files

프로젝트 최상위에 위치한 주요 문서입니다.

README.md

Entry-Sync 프로젝트를 처음 방문한 사용자를 위한 메인 문서입니다.

다음과 같은 정보를 제공합니다.

  • 프로젝트 소개
  • 주요 기능
  • 설치 방법
  • 사용 방법
  • 기술 정보
  • 기여 방법
  • 라이선스

CONTRIBUTING.md

Entry-Sync에 기여하려는 개발자를 위한 안내 문서입니다.

Issue 작성, 개발 환경, Branch, Commit, Pull Request 등의 기여 절차를 설명합니다.


CODE_OF_CONDUCT.md

Entry-Sync 커뮤니티에서 지켜야 할 행동 규칙을 정의합니다.


SECURITY.md

보안 취약점을 발견했을 때 제보하는 방법과 보안 관련 정책을 설명합니다.

보안 취약점은 공개 Issue나 Discussion에 올리지 않는 것을 권장합니다.


LICENSE

Entry-Sync의 오픈소스 라이선스를 정의합니다.

현재 프로젝트는 MIT License를 사용합니다.


개인정보처리방침.md

Entry-Sync에서 개인정보를 어떻게 처리하는지 설명하는 문서입니다.


🔄 개발 시 참고

코드를 수정할 때는 변경하려는 기능과 관련된 파일을 먼저 확인해주세요.

예를 들어:

Popup UI 수정
    ↓
extension/popup.html
extension/popup.js

Chrome Extension 설정 수정
    ↓
extension/manifest.json

웹 페이지와 Extension의 동작 수정
    ↓
extension/content.js
extension/inject.js

변경 사항을 완료한 후에는 Chrome에서 Extension을 다시 로드하여 정상적으로 작동하는지 확인합니다.


🤝 관련 문서