{{위키데이터 속성 추적}}
{{소프트웨어 정보
| name = 폴리머
| logo = [[파일:Polymer Project logo.png|120px|폴리머 프로젝트 로고]]
| developer = [[구글]]<ref>{{웹 인용|title= AUTHORS.txt|url=https://polymer.github.io/AUTHORS.txt|access-date=18 August 2017|language=en}}</ref> and contributors<ref>{{웹 인용|title=CONTRIBUTORS.txt|url=https://polymer.github.io/CONTRIBUTORS.txt|access-date=18 August 2017|language=en}}</ref>
| ver layout = stacked
| released = {{시작 날짜와 나이|2015|05|29}}<ref>{{웹 인용|title=1.0|url=https://www.polymer-project.org/blog/2015-05-29-one-dot-oh.html|website=Polymer Project|access-date=18 August 2017|language=en}}</ref>
| latest release version = {{Multiple releases
  |branch1 = 1.x&nbsp;
  |version1 = 1.12.0
  |date1 = {{시작 날짜와 나이|df=yes|2019|05|21}}<ref name="versions">{{웹 인용|title=Releases · Polymer/polymer|url=https://github.com/Polymer/polymer/releases|website=GitHub|access-date=4 September 2019|language=en}}</ref>
  |branch2 = 2.x
  |version2 = 2.8.0
  |date2 = {{시작 날짜와 나이|df=yes|2019|06|24}}<ref name="versions" />
  |branch3 = 3.x
  |version3 = {{wikidata|property|edit|reference|P348}}
  |date3 = {{시작 날짜와 나이|{{wikidata|qualifier|P348|P577}}}}
  }}
<!--3.2.0, 2.7.2, 1.11.3-->| latest release date = <!--{{시작 날짜와 나이|2019|04|16}}<ref>{{웹 인용|title=Releases · Polymer/polymer|url=https://github.com/Polymer/polymer/releases/tag/v2.7.2|website=GitHub|access-date=2 May 2019|language=en}}</ref>, {{시작 날짜와 나이|2019|03|21}}<ref>{{웹 인용|title=Releases · Polymer/polymer|url=https://github.com/Polymer/polymer/releases/tag/v3.2.0|website=GitHub|access-date=2 May 2019|language=en}}</ref>-->
| latest preview version = 
| latest preview date = 
| repo = {{GitHub|https://github.com/Polymer/polymer|link=hidden}}
| programming language = [[자바스크립트]], [[HTML]]
| genre = [[자바스크립트 라이브러리]]
| license = [[BSD 라이선스|3-Clause BSD]]<ref>{{웹 인용|title=polymer/LICENSE.txt at master|url=https://github.com/Polymer/polymer/blob/master/LICENSE.txt|website=GitHub|access-date=24 April 2017|language=en}}</ref>
| website = {{URL|https://www.polymer-project.org}}
}}
'''폴리머'''(polymer)는 [[웹 컴포넌트]]를 사용하여 [[웹 애플리케이션]]을 빌드하기 위한 [[오픈 소스]] [[자바스크립트 라이브러리]]이다. 이 라이브러리는 [[구글]]의 개발자들과 [[깃허브]]의 기여자들에 의해 개발되고 있다. 현대의 디자인 원칙은 구글의 [[머티리얼 디자인]] 디자인 원칙을 사용하여 별개의 프로젝트로 구현되어 있다.

폴리머는 [[유튜브]], 유튜브 게이밍, 재설계된 [[구글 어스]](2017년부터)<ref>{{웹 인용|last=Bidelman|first=Eric|date=2017-04-18|title=Mission accomplished: has been componentized. New @googleearth is built w/ #WebComponents using @polymer.pic.twitter.com/h76ztfynYy|url=https://twitter.com/ebidel/status/854366654741991424|access-date=2017-07-08|website=@ebidel}}</ref> [[구글 I/O]] 2015와 2016 웹사이트, [[구글 플레이 뮤직]],  [[구글 사이트]]의 리디자인<ref>{{웹 인용|title=Meet Google Drive – One place for all your files|url=https://accounts.google.com/ServiceLogin?service=wise&passive=1209600&continue=https://sites.google.com/new&followup=https://sites.google.com/new|access-date=2021-06-21|website=accounts.google.com}}</ref> 웹용 [[구글 알로|알로]](2019년 종료 전까지)를 포함한 수많은 구글 서비스와 웹사이트에 의해 사용된다.<ref>{{웹 인용|title=Who's using Polymer?|url=https://github.com/Polymer/polymer/wiki/Who's-using-Polymer%3F|website=GitHub|access-date=4 June 2016}}</ref>

다른 저명한 사용처는 [[넷플릭스]], [[일렉트로닉 아츠]], [[컴캐스트]], [[Nuxeo]], [[ING 그룹]], [[코카콜라]], [[맥도널드]], [[BBVA]], [[IBM]], [[제네럴 일렉트릭]] 등이 있다.

== 커스텀 엘리먼트 ==
커스텀 엘리먼트는 클래스가 있는 [[ECMA스크립트|ES]](ECMA스크립트, 대부분은 [[자바스크립트]]) 모듈을 사용하여 개발이 가능하다. 커스텀 엘리먼트 정의는 [[CSS|CSS 스타일]], 엘리먼트의 로컬 [[DOM]]의 HTML 템플릿, 엘리먼트 속성, 라이프사이클 콜백, 자바스크립트 메소드로 구성된다:

<syntaxhighlight lang="javascript">
import {PolymerElement, html} from '@polymer/polymer/polymer-element.js'

class HelloElement extends PolymerElement {

    static get template() {
        return html`
        <style>
        /* Local DOM CSS style */
        </style>
        <!-- Local DOM -->
        Hello {{name}}!
        `;
    }

    static get is() { return 'hello-element'; }
    static get properties() {
        return {
            name: {
                type: String
            }
            /* Element properties */
        }
    }
    /* Custom methods */
}
window.customElements.define(HelloElement.is, HelloElement);
</syntaxhighlight>

위에 정의된 엘리먼트는 HTML 코드 안에 사용할 수 있다:

<syntaxhighlight lang="html">
    <hello-element name="World"></hello-element>
</syntaxhighlight>

== 같이 보기 ==
* [[Vue.js]]
* [[AngularJS]]
* [[React]]

== 각주 ==
{{각주}}

== 외부 링크 ==
* {{공식 웹사이트}}
* {{GitHub|https://github.com/Polymer/polymer}}
* {{URL|https://www.webcomponents.org/}}

[[분류:자유 라이브러리]]
[[분류:자바스크립트로 작성된 자유 소프트웨어]]
[[분류:구글의 소프트웨어]]
[[분류:HTML]]
[[분류:자바스크립트 라이브러리]]
[[분류:리치 인터넷 애플리케이션 프레임워크]]
[[분류:BSD 라이선스 소프트웨어]]