본 포스트는 크롬 익스텐션 개발자 페이지(https://developer.chrome.com/extensions/overview)를 토대로 작성되었습니다.
그냥 공부하는 차원에서 개발자스러운 번역 중...
기본
익스텐션은 HTML, CSS, 자바스크립트, 이미지와 필요한 파일들로 이루어진 압축파일로 구글 크롬 브라우저에 기능을 추가해준다. 익스텐션은 본질적으로 웹 페이지와 페이지들이 사용할 수 있는 모든 API(브라우저에서 제공하는 XMLHttpRequest, JSON, HTML5)를 사용할 수 있다.
익스텐션은 웹페이지나 컨텐츠 스크립트나 cross-origin XMLHttpRequests(크로스 도메인 리퀘스트?) 간의 상호연동을 가능하게 한다. 익스텐션은 또한 북마크나 탭과 같은 브라우저의 기능과도 상호연동이 가능하다.
익스텐션 UI
많은 익스텐션(크롬 앱은 아님)은 크롬 브라우저에 브라우저 액션과 페이지 액션의 형식으로 UI 를 추가한다. 각 익스텐션은 오로지 단 하나의 브라우저 액션이나 페이지 액션을 가질 수 있다. 익스텐션이 대부분 페이지에 관련이 있을 때 브라우저 액션을 선택하며, 페이지에 의해 아이콘을 활성/비활성할 때는 페이지 액션을 선택한다.
익스텐션(크롬 앱)은 크롬 컨텍스트 메뉴, 옵션 페이지 제공, 컨텐츠 스트립트를 이용하여 다른 방식의 UI 를 제공할 수 있다.