forked from pnpm/pnpm.io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
template.pug
93 lines (92 loc) · 11.6 KB
/
template.pug
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
doctype html
html
head
title= title
meta(charset='UTF-8')
meta(name='description', content=description)
meta(name='keywords', content=keywords)
meta(property='og:site_name', content='pnpm')
meta(property='og:title', content=title)
meta(property='og:image', content='https://pnpm.io/logo.png')
meta(property='og:description', content=description)
meta(name='viewport', content='width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=0')
link(rel='stylesheet', href='https://unpkg.com/tachyons@4.6.1/css/tachyons.min.css')
script.
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-91385296-1', 'auto');
ga('send', 'pageview');
body.helvetica
.pa3.ph6-ns.pv2-ns.black-70
each lang in langs
a.link.blue.mr2(href='/' + (lang.code === 'en' ? '' : lang.code + '/'))= lang.label
.pb5.bb.b--black-10
h3.w-100.mt5.f5.ttu.tracked.fw6 pnpm
h1.f4.f1-ns.mb4.mt4.lh-title= h1
iframe(
src="https://ghbtns.com/github-btn.html?user=pnpm&repo=pnpm&type=star&count=true&size=large",
frameborder="0",
scrolling="0",
width="160px",
height="30px",
style="vertical-align: middle;"
)
a.ba.black-70.no-underline.grow.br2.b.inline-flex.items-center.mr3.mb3.pv2.ph3(href="/docs") Docs
.mb4.mb5-ns
h3.fl.w-100.mt5.f5.ttu.tracked.fw6= features
.cf
article.pv2.fl.w-100.w-50-l.pr0.pr2-l
h2.f4.f2-ns.lh-title.measure.mb2= speed
p.lh-copy.measure.mv0!= speedCopy
article.pv2.fl.w-100.w-50-l.pl0.pl2-l
h2.f4.f2-ns.lh-title.measure.mb2= efficiency
p.lh-copy.measure.mv0!= efficiencyCopy
.cf
article.pv2.fl.w-100.w-50-l.pr0.pr2-l
h2.f4.f2-ns.lh-title.measure.mb2= sanity
p.lh-copy.measure.mv0!= sanityCopy
article.pv2.fl.w-100.w-50-l.pl0.pl2-l
h2.f4.f2-ns.lh-title.measure.mb2= simplicity
p.lh-copy.measure.mv0!= simplicityCopy
.mb4.mb5-ns
h3.fl.w-100.mt5.f5.ttu.tracked.fw6= whatDevsSay
.cf
article.pv2.fl.w-100.w-50-l.pr0.pr2-l
| <blockquote class="twitter-tweet" data-cards="hidden" data-lang="en">
| <p lang="en" dir="ltr">Between npm and yarn, I've been very happy using *pnpm* lately <a href="https://t.co/HkXnR97wlZ">https://t.co/HkXnR97wlZ</a> simple, very fast, space efficient, unobtrusive</p>— André Staltz (@andrestaltz) <a href="https://twitter.com/andrestaltz/status/860444660505989120">May 5, 2017</a></blockquote>
article.pv2.fl.w-100.w-50-l.pl0.pl2-l
| <blockquote class="twitter-tweet" data-lang="en"><p lang="en" dir="ltr">
| Simple and genius idea, so that you always will wonder why you didn't think of it yourself <a href="https://t.co/jIMa2U4yym">https://t.co/jIMa2U4yym</a> <a href="https://twitter.com/pnpmjs">@pnpmjs</a> (but, pruning?)</p>— Michel Weststrate (@mweststrate) <a href="https://twitter.com/mweststrate/status/861533946668089346">May 8, 2017</a></blockquote>
.cf
article.pv2.fl.w-100.w-50-l.pr0.pr2-l
| <blockquote class="twitter-tweet" data-lang="en"><p lang="en" dir="ltr">I've been long advocating for <a href="https://twitter.com/pnpmjs">@pnpmjs</a> — it's like a hidden gem in Node ecosystem. Try it, it is mature and performant. <a href="https://t.co/ie91RMYlSP">https://t.co/ie91RMYlSP</a></p>— Andrey Popp (@andreypopp) <a href="https://twitter.com/andreypopp/status/861550953526206464">May 8, 2017</a></blockquote>
article.pv2.fl.w-100.w-50-l.pl0.pl2-l
| <blockquote class="twitter-tweet" data-conversation="none" data-lang="en"><p lang="en" dir="ltr"><a href="https://twitter.com/wmhilton">@wmhilton</a> <a href="https://twitter.com/yarnpkg">@yarnpkg</a> <a href="https://twitter.com/pnpmjs">@pnpmjs</a> just installed it and it worked like a charm. I'm impressed!</p>— Stephan Hoyer (@cmx66) <a href="https://twitter.com/cmx66/status/854596611690942465">April 19, 2017</a></blockquote>
script(async src="https://platform.twitter.com/widgets.js" charset="utf-8")
footer.bg-white.black-70.ph3.ph6-ns.pv5.pv6-ns.bt.b--black-10
a.ba.black-70.no-underline.grow.br2.b.inline-flex.items-center.mr3.mb3.pv2.ph3(href='https://twitter.com/pnpmjs', title='Follow us on Twitter')
.w2.pv1.pr2
svg(fill='currentColor', xmlns='http://www.w3.org/2000/svg', viewbox='0 0 16 16', fill-rule='evenodd', clip-rule='evenodd', stroke-linejoin='round', stroke-miterlimit='1.414')
path(d='M16 3.038c-.59.26-1.22.437-1.885.517.677-.407 1.198-1.05 1.443-1.816-.634.375-1.337.648-2.085.795-.598-.638-1.45-1.036-2.396-1.036-1.812 0-3.282 1.468-3.282 3.28 0 .258.03.51.085.75C5.152 5.39 2.733 4.084 1.114 2.1.83 2.583.67 3.147.67 3.75c0 1.14.58 2.143 1.46 2.732-.538-.017-1.045-.165-1.487-.41v.04c0 1.59 1.13 2.918 2.633 3.22-.276.074-.566.114-.865.114-.21 0-.416-.02-.617-.058.418 1.304 1.63 2.253 3.067 2.28-1.124.88-2.54 1.404-4.077 1.404-.265 0-.526-.015-.783-.045 1.453.93 3.178 1.474 5.032 1.474 6.038 0 9.34-5 9.34-9.338 0-.143-.004-.284-.01-.425.64-.463 1.198-1.04 1.638-1.7z', fill-rule='nonzero')
span= followOnTwitter
a.ba.black-70.no-underline.grow.br2.b.inline-flex.items-center.mr3.mb3.pv2.ph3(href='https://gitter.im/pnpm/pnpm', title='Join our Gitter chat room')
.dib.w2.pv1.pr2
svg(fill='currentColor', xmlns='http://www.w3.org/2000/svg', xmlns:xlink='http://www.w3.org/1999/xlink', version='1.1', x='0px', y='0px', width='24', height='24', viewbox='0 0 177.25 177.25', enable-background='new 0 0 177.25 177.25', xml:space='preserve')
g(id='_x38_MJ9tV.tif', display='none')
image#Layer_0(display='inline', overflow='visible', enable-background='new ', width='118', height='33', xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHYAAAAhCAYAAAAMLF9eAAAACXBIWXMAAAsSAAALEgHS3X78AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABOhJREFUeNrsW1toFEkU7ZhGI47v DYohPlAQxYgL7oKiKIKgPyoKC75gFdFPEQP+iC74IYLih+wqKqIIKr5Ag+ADH4sPVAJGsz4i44PE aHTcbFaDI4Pj7rmZ06YsuifdGcWasQ4cOlNTPV1dt+6tc293ihLlv2x1HGeck8Hv4OnShsOtjkVe w6VRp/LzCbZZ5Dm62CmwhrXIs1Dsi0T53BE4xPixGWwqbTieQnsZ/u4HFoNJsB7tSbRL20Cwq9pu p9gwwwJrwPH8uwrcAT4H54OzwJ5gHbiex0ngCnCQ1m5hmGFHKGr5Nj1RIB5bAfbh5+48iseOBodq 7RZ2j7WwhrXodCj+pug/dnwFQ7se0uNgzd93qlt9zvGE3b8i9tAnhTZV1EVBI0VgWSe2leYcrt8m PHFukvekitggxPX5cA006BQcFnF/70v1rUJu4AX6ncNxP26oSfnOE3aXFLGniroo2EzxVwmOjHhu VQ7X14WnKmKD0Ir5uIbjHho57Rpm1Dk4rOSN9AD/Au9zFQtKOMkTwHdOplKmGtYTdo9DeMhn3g2m IgzV88K0eJcyvqC+EnkGhOibTcQ2MhKkA+5DrjFRFiLmsdo1yKhyA8tptNeg1LBPgy+VmylmmjWE 4bElxE9fYfjWDV1J776qeJdfKF7vE4pn0QvfBqR1zbwHFfUhU8Ak++o4CJ7kNVXI2KYrc7dMFqpJ HjsP/BH8CG4Cj4KvJKz4LIJ79N53Hf0ozm/mROu/keCCke/uod/TLKFRP3ccPVyMUIdza0LunWH7 Bu35tTi/xWc8cXrtYnAmuNs1xFtlUNPAH8Cz4HmKj/8CjJWKGDoLGpiPBDXHDIbuElPSnWHcg2Sh nQKfBRnVIhCiE95zuyoyxbCepE8y9NnnwdExCuxlWrrTnStNREMLvPVjAU68LN5dCJnZFm3biw5+ OXoI4bmAKVWtKH3T8tikj5wPupGYlwL4CSwDEQuRj2Z70eEn0RW4d10wjgF/VoSnqOeGfH1bwkva NwekACYiTrUf76BPkLfOYLFDj2a9GYKfgPvAQ+A/Lt3/BDv92YkE2sNNcAMvkqA3RUXY8p2XtJf6 VKZMhRisOod0R4z+SMkGhnMOYrShpId3vQjmsgjgKqEwlcOFnzmZBwvpMDmmz0otl4oOwk1XpjQW 7ThD473hZ1nUG8HJNLKkh4lP4ulLvZEob1fksCjqGE6LOdAbPpWg7x1SSKn3ChRY/A04bKMzSIie h7adnnG7GDToKzxKIX8CBmkf1GcvSqRZyDnCSPurCCiJdsYYloM8QM+VELMWXI5BDgaLNUXcmcdo hWpcibZ7wVvUJ6sZlo16bCf13y3gOifzpKKSuVktjPlWEVdl/L4Q89hP6hlGi4f8XVHDfziZV5Jk G1uEa2xzDVp9kqOJQJA9ZCE4m/mZGPGDUsgQ734IXgcvOPlTpQqTxwr6OB0/WP8s2mHevJAsT3iW glWuaaEFg7xMWb+bRo1pBQxZoa+kO/gS53zQKjfHnMwjs6YOLhelrw7JJB5wwcVD9i2JkBapv7mK xg7McTlv251Mnb2bXK8o6NcT5XMvOu3/+iGJ729Qvk/RvpUbtVxMcrIlaK/5GobGYGPadtGWRuVJ pembwujKU9SaqUU77FuK1rAWhRKKvU3bobho0kSH67PRWxiC/wUYAJblttDygGF7AAAAAElFTkSu QmCC', transform='matrix(0.9915 0 0 0.9697 1052.3047 715.1367)')
g(id='VZchZG.tif', display='none')
image#Layer_0_1_(display='inline', overflow='visible', enable-background='new ', width='32', height='32', xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsSAAALEgHS3X78AAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIhJREFUeNpiZAACC2PbM4x//0gx 0BH8Z2Z5duLsYRNGkOUggYFwAIhmobfFMACzl4lhgMGoA0YdMOoAvA5wcnX5ffTc0bMgTA2x0SgY dcCoA0YdgA2w4JPct3sPKxAbk2MwsXpHo2DUAaMOYLQ0sHw2GgUjuyiGdRIHqnPKBOoiD5TvQXYD BBgAmlpH8O1Ct20AAAAASUVORK5CYII=', transform='matrix(1 0 0 1 792 546)')
g(id='jxJjd2.tif', display='none')
image#Layer_0_2_(display='inline', overflow='visible', enable-background='new ', width='64', height='64', xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAP/AAAD/wGuK+TeAAAA GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAnFJREFUeNrsW79LHEEUntE9KzHk clwjeI2FTapACIhdsDgkhMRCbSzCWVkEUoR0KUPaFMJZiH+AIhaHEBBMGSGNf4Bco0fCVYIG0X35 5n7OXW7hZHd25/bNg+9m7it2bt59772Z3R0pNKvnN16iWQUWgDwwLtJjd8A58B3YAqpPfpdJapP/ gqYEZEX67QLYBI5kc/Klr2jeMZl8266AN7KeK71Apww8Ffxsfwwfr4FpwdMWPSFpFp1Jpg6YVArw AMnUAUI54B4grg7wGM+95QCf9fwbIcBcAZKcApjnAN8pwDnAgE0dfhTZ+k4Dmfk5pwBrcwAZqgL6 VdUYZGm1cQqI459xCtDs0cEnkfuz24CeHB/Kj+BmiAzzLgdYthfQr6v67e9R8aMVAhQg3aj4MFWA 9fSdAoTnS3NT1vvtcaLiXRm0XQG6qTEGjRMVHzIJkogjCLrjRMWP6G4wKt6VQftDoF+4ZIwPGQKG Zi17+51xouJtVwD9J12KlLdfAf0/XJrjQy6EzFht+bNV14m9DA4THL1ljYyWu+CVYMyPx/uXNf7A WO/yxh2Q5K3KOOt9okkw0AEBZY0MlDsLdoN2asBL+m59PJvehJfCYRZIMeSAmN8PkHq580Vn/CDe vAJkgvKXYtD4QXwqQmDQ/m54PgVJkAJyPSW0DpBnM6/20C4BE4Khebxfkks8BzgFJG7u8bgLAe4K cC9LNw9Hsj0y4/nuyAxV0V4zXQn+VSFQAS6ZCuBHI/ZPC8VtNCuC1/lBFfZvWw9G6D0+Mopg4oQb 4ANw3JP9fxaKa2jWgWfA45StFFWyrwEnwDfg1/Nq5fafAAMAE6xkAvixwqwAAAAASUVORK5CYII=', transform='matrix(2.7695 0 0 2.7695 86.7505 49.2495)')
path(d='M159.25 0H18C8.059 0 0 8.059 0 18v141.25c0 9.941 8.059 18 18 18h141.25c9.941 0 18-8.059 18-18V18C177.25 8.059 169.191 0 159.25 0zM69.25 102.5H61v-61h8.25V102.5zM85.75 135.75H77.5V55.5h8.25V135.75zM102.5 135.75h-8.25V55.5h8.25V135.75zM119 102.5h-8.25v-47H119V102.5z')
span= joinOnGitter
|
a.github-corner(href='https://github.com/pnpm/pnpm', aria-label='View source on Github')
svg(width='80', height='80', viewbox='0 0 250 250', style='fill:#151513; color:#fff; position: absolute; top: 0; border: 0; right: 0;', aria-hidden='true')
path(d='M0 0 115 115 130 115 142 142 250 250 250 0Z')
path.octo-arm(d='M128.3 109C113.8 99.7 119 89.6 119 89.6 122 82.7 120.5 78.6 120.5 78.6 119.2 72 123.4 76.3 123.4 76.3 127.3 80.9 125.5 87.3 125.5 87.3 122.9 97.6 130.6 101.9 134.4 103.2', fill='currentColor', style='transform-origin: 130px 106px;')
path.octo-body(d='M115 115C114.9 115.1 118.7 116.5 119.8 115.4L133.7 101.6C136.9 99.2 139.9 98.4 142.2 98.6 133.8 88 127.5 74.4 143.8 58 148.5 53.4 154 51.2 159.7 51 160.3 49.4 163.2 43.6 171.4 40.1 171.4 40.1 176.1 42.5 178.8 56.2 183.1 58.6 187.2 61.8 190.9 65.4 194.5 69 197.7 73.2 200.1 77.6 213.8 80.2 216.3 84.9 216.3 84.9 212.7 93.1 206.9 96 205.4 96.6 205.1 102.4 203 107.8 198.3 112.5 181.9 128.9 168.3 122.5 157.7 114.1 157.9 116.9 156.7 120.9 152.7 124.9L141 136.5C139.8 137.7 141.6 141.9 141.8 141.8Z', fill='currentColor')
style.
.github-corner:hover .octo-arm{animation:octocat-wave 560ms ease-in-out}@keyframes octocat-wave{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)}}@media (max-width:500px){.github-corner:hover .octo-arm{animation:none}.github-corner .octo-arm{animation:octocat-wave 560ms ease-in-out}}