<script type="application/json" id="HeaderNotice-apollo-state-992f9e1e-c79c-43fb-96a9-089d825fa346">{}</script> <!-- glamorIds: 7 --> <script type="application/json" id="HeaderNotice-glamor-992f9e1e-c79c-43fb-96a9-089d825fa346">["1htug8r","1yodi52","iepywa","x5hg3h","u0iaox","9ilv8v","gwph6j"]</script> <style>@-webkit-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-moz-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-o-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-webkit-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-moz-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-o-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-webkit-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-moz-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-o-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-webkit-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-moz-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-o-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-webkit-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-moz-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-o-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-webkit-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-moz-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-o-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}.css-gwph6j,[data-css-gwph6j]{border-radius:2px;background-size:200% 100%;width:auto;height:auto;animation:20s animation_1yodi52 0s linear infinite;background:-webkit-linear-gradient(to right, #f1f1f1 0%, #fbfbfb 50%, #f1f1f1 100%); background: -moz-linear-gradient(to right, #f1f1f1 0%, #fbfbfb 50%, #f1f1f1 100%); background: linear-gradient(to right, #f1f1f1 0%, #fbfbfb 50%, #f1f1f1 100%);-webkit-animation:20s animation_1yodi52 0s linear infinite;}</style> <div id="HeaderNotice-react-component-992f9e1e-c79c-43fb-96a9-089d825fa346" data-ssr="true" ><div style="z-index:1000" class="css-gwph6j"></div></div> <script> renderComponent('HeaderNotice','HeaderNotice-react-component-992f9e1e-c79c-43fb-96a9-089d825fa346','HeaderNotice-apollo-state-992f9e1e-c79c-43fb-96a9-089d825fa346','HeaderNotice-glamor-992f9e1e-c79c-43fb-96a9-089d825fa346', 'apollo','{"mobile":false}'); </script> <script type="application/json" id="Stackup-apollo-state-67029e5a-60d7-4563-88ab-a88bbba67d37">{"Tool:102093767437450170":{"id":"102093767437450170","legacyThirdPartyId":"10903","slug":"pnpm","contactEnabled":false,"contactButtonText":null,"contactFlow":{"type":"json","json":{}},"name":"pnpm","packageManager":null,"type":"Tool","imageUrl":"https://img.stackshare.io/service/10903/JLVo_YPe_400x400.jpg","thumbUrl":"https://img.stackshare.io/service/10903/thumb_JLVo_YPe_400x400.jpg","thumbRetinaUrl":"https://img.stackshare.io/service/10903/thumb_retina_JLVo_YPe_400x400.jpg","canonicalUrl":"/pnpm","stacks":92,"votes":5,"jobs":8,"followersCount":42,"following":false,"latestVersionNumber":"7.18.0","license":{"type":"id","generated":true,"id":"$Tool:102093767437450170.license","typename":"ToolLicense"},"dependentPackagesCount":0,"membersCount":0,"vulnerabilities":{"type":"id","generated":true,"id":"$Tool:102093767437450170.vulnerabilities","typename":"VulnerabilityConnection"},"hackernewsOnlineMentionsCount":0,"redditOnlineMentionsCount":137,"stackOverflowOnlineMentionsCount":147,"githubForksCount":620,"githubStarsCount":20848,"githubUpdatedAt":"2022-12-06T14:38:33Z","description":"It uses hard links and symlinks to save one version of a module only ever once on a disk. When using npm or Yarn for example, if you have 100 projects using the same version of lodash, you will have 100 copies of lodash on disk. With pnpm, lodash will be saved in a single place on the disk and a hard link will put it into the node_modules where it should be installed.","pricingUrl":"","popularity":182.4,"path":"/pnpm","pressUrl":"https://github.com/pnpm/pnpm","relatedStackupsCount":23,"layer":{"type":"id","generated":true,"id":"$Tool:102093767437450170.layer","typename":"Layer"},"category":{"type":"id","generated":true,"id":"$Tool:102093767437450170.category","typename":"Category"},"function":{"type":"id","generated":true,"id":"$Tool:102093767437450170.function","typename":"Function"},"cachedPros":{"type":"json","json":{"count":5,"edges":[{"node":{"id":"108831987223681049","text":"Works as a Node.js package manager","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"},{"node":{"id":"108831985735058981","text":"Has CLI auto-completion","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"},{"node":{"id":"108831984328027568","text":"Has a nice UI","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"},{"node":{"id":"108831983584845106","text":"Fast","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"},{"node":{"id":"108831982599829283","text":"Uses less disk space","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"}],"pageInfo":{"endCursor":"NQ","__typename":"PageInfo","hasNextPage":false},"__typename":"ReasonConnection"}},"cachedCons":{"type":"json","json":{"count":0,"edges":[],"pageInfo":{"endCursor":null,"__typename":"PageInfo","hasNextPage":false},"__typename":"ReasonConnection"}},"privateStacks({\"first\":7})":{"type":"id","generated":true,"id":"$Tool:102093767437450170.privateStacks({\"first\":7})","typename":"StackConnection"},"teams({\"first\":7})":{"type":"id","generated":true,"id":"$Tool:102093767437450170.teams({\"first\":7})","typename":"TeamConnection"},"cachedCompanyStacksUsing":{"type":"json","json":{"count":19,"edges":[{"node":{"owner":{"name":"BlaBlaCar","imageUrl":"https://img.stackshare.io/company/11170/default_cb2311170746b3089a211c13b503fe8170ba810b.png","thumbUrl":"https://img.stackshare.io/company/11170/thumb_cb2311170746b3089a211c13b503fe8170ba810b.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/blablacar/blablacar"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Vinted","imageUrl":"https://img.stackshare.io/company/15390/default_dca2eaeb5d56b5a433aeef468fe58263d3db372d.png","thumbUrl":"https://img.stackshare.io/company/15390/thumb_dca2eaeb5d56b5a433aeef468fe58263d3db372d.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/vinted/vinted"},"__typename":"StackEdge"},{"node":{"owner":{"name":"OVRSEA","imageUrl":"https://img.stackshare.io/company/27567/default_269dbd730fe07226470a4cb7b794ff7d31c1ae26.png","thumbUrl":"https://img.stackshare.io/company/27567/thumb_269dbd730fe07226470a4cb7b794ff7d31c1ae26.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/ovrsea/ovrsea"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Maze","imageUrl":"https://img.stackshare.io/company/28514/default_2ddc764457a27bb38a65aa69f7278e3487587034.png","thumbUrl":"https://img.stackshare.io/company/28514/thumb_2ddc764457a27bb38a65aa69f7278e3487587034.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/maze/maze"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Orbulo","imageUrl":"https://img.stackshare.io/company/167435/default_ef48c6a173a4b42168d70254308862dcd25f95a2.png","thumbUrl":"https://img.stackshare.io/company/167435/thumb_ef48c6a173a4b42168d70254308862dcd25f95a2.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/orbulo/tabulo"},"__typename":"StackEdge"},{"node":{"owner":{"name":"u29dc","imageUrl":"https://img.stackshare.io/company/162293/default_68436bd9e825415d3f63b591174181c5d6c3eb15.png","thumbUrl":"https://img.stackshare.io/company/162293/thumb_68436bd9e825415d3f63b591174181c5d6c3eb15.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/u29dc/www"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Trybe","imageUrl":"https://img.stackshare.io/company/171537/default_813631ec4e31f04ae1a227b9fafd5b43b650efc2.png","thumbUrl":"https://img.stackshare.io/company/171537/thumb_813631ec4e31f04ae1a227b9fafd5b43b650efc2.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/trybe/trybe"},"__typename":"StackEdge"}],"pageInfo":{"endCursor":"Nw","__typename":"PageInfo","hasNextPage":true},"__typename":"StackConnection"}},"cachedAllToolIntegrations":{"type":"json","json":{"count":3,"edges":[{"node":{"name":"Linux","path":"/linux","imageUrl":"https://img.stackshare.io/service/10483/linux.png","thumbUrl":"https://img.stackshare.io/service/10483/thumb_linux.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Windows","path":"/windows","imageUrl":"https://img.stackshare.io/service/2881/U54M_YbJ_400x400.jpg","thumbUrl":"https://img.stackshare.io/service/2881/thumb_U54M_YbJ_400x400.jpg","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"macOS","path":"/macos","imageUrl":"https://img.stackshare.io/service/5560/macos.png","thumbUrl":"https://img.stackshare.io/service/5560/thumb_macos.png","__typename":"Tool"},"__typename":"ToolEdge"}],"pageInfo":{"endCursor":"Mw","__typename":"PageInfo","hasNextPage":false},"__typename":"ToolConnection"}},"officialArticles({\"first\":5})":{"type":"id","generated":true,"id":"$Tool:102093767437450170.officialArticles({\"first\":5})","typename":"ArticleConnection"},"__typename":"Tool"},"$Tool:102093767437450170.license":{"name":"MIT","url":"https://github.com/pnpm/pnpm/blob/main/LICENSE","__typename":"ToolLicense"},"$Tool:102093767437450170.vulnerabilities":{"edges":[],"__typename":"VulnerabilityConnection"},"$Tool:102093767437450170.layer":{"name":"DevOps","slug":"devops","__typename":"Layer"},"$Tool:102093767437450170.category":{"name":"Build, Test, Deploy","slug":"build-test-deploy","__typename":"Category"},"$Tool:102093767437450170.function":{"name":"Package Managers","slug":"package-managers","__typename":"Function"},"$Tool:102093767437450170.privateStacks({\"first\":7})":{"edges":[],"__typename":"StackConnection"},"$Tool:102093767437450170.teams({\"first\":7})":{"edges":[],"__typename":"TeamConnection"},"$Tool:102093767437450170.officialArticles({\"first\":5})":{"edges":[],"__typename":"ArticleConnection"},"ROOT_QUERY":{"tool({\"id\":\"pnpm\"})":{"type":"id","generated":false,"id":"Tool:102093767437450170","typename":"Tool"},"tool({\"id\":\"yarn\"})":{"type":"id","generated":false,"id":"Tool:101231776364087566","typename":"Tool"},"stackupBySlug({\"slug\":\"pnpm-vs-yarn\"})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"})","typename":"Stackup"}},"Tool:101231776364087566":{"id":"101231776364087566","legacyThirdPartyId":"5848","slug":"yarn","contactEnabled":false,"contactButtonText":"Create a Next.js app with DataStax Astra","contactFlow":{"type":"json","json":{"links":[{"url":"https://github.com/DataStax-Examples/astra-next.js-starter","type":"website"}],"steps":["direct_link"]}},"name":"Yarn","packageManager":null,"type":"Tool","imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","thumbUrl":"https://img.stackshare.io/service/5848/thumb_44mC-kJ3.jpg","thumbRetinaUrl":"https://img.stackshare.io/service/5848/thumb_retina_44mC-kJ3.jpg","canonicalUrl":"/yarn","stacks":15911,"votes":143,"jobs":311,"followersCount":11430,"following":false,"latestVersionNumber":"2.4.3","license":null,"dependentPackagesCount":0,"membersCount":0,"vulnerabilities":{"type":"id","generated":true,"id":"$Tool:101231776364087566.vulnerabilities","typename":"VulnerabilityConnection"},"hackernewsOnlineMentionsCount":0,"redditOnlineMentionsCount":666,"stackOverflowOnlineMentionsCount":3,"githubForksCount":2880,"githubStarsCount":40970,"githubUpdatedAt":"2022-12-06T12:58:41Z","description":"Yarn caches every package it downloads so it never needs to again. It also parallelizes operations to maximize resource utilization so install times are faster than ever.","pricingUrl":null,"popularity":38550,"path":"/yarn","pressUrl":"https://github.com/yarnpkg/yarn","relatedStackupsCount":28,"layer":{"type":"id","generated":true,"id":"$Tool:101231776364087566.layer","typename":"Layer"},"category":{"type":"id","generated":true,"id":"$Tool:101231776364087566.category","typename":"Category"},"function":{"type":"id","generated":true,"id":"$Tool:101231776364087566.function","typename":"Function"},"cachedPros":{"type":"json","json":{"count":8,"edges":[{"node":{"id":"101978469443500361","text":"Incredibly fast","upvoted":false,"__typename":"Reason","upvotesCount":84},"__typename":"ReasonEdge"},{"node":{"id":"101978469695109641","text":"Easy to use","upvoted":false,"__typename":"Reason","upvotesCount":21},"__typename":"ReasonEdge"},{"node":{"id":"101978469690117999","text":"Open Source","upvoted":false,"__typename":"Reason","upvotesCount":12},"__typename":"ReasonEdge"},{"node":{"id":"101978469885608320","text":"Can install any npm package","upvoted":false,"__typename":"Reason","upvotesCount":10},"__typename":"ReasonEdge"},{"node":{"id":"101978470106229680","text":"Works where npm fails","upvoted":false,"__typename":"Reason","upvotesCount":7},"__typename":"ReasonEdge"},{"node":{"id":"101978470029745956","text":"Workspaces","upvoted":false,"__typename":"Reason","upvotesCount":6},"__typename":"ReasonEdge"},{"node":{"id":"101978469859307881","text":"Incomplete to run tasks","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"},{"node":{"id":"108328869043171251","text":"Fast","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"}],"pageInfo":{"endCursor":"OA","__typename":"PageInfo","hasNextPage":false},"__typename":"ReasonConnection"}},"cachedCons":{"type":"json","json":{"count":4,"edges":[{"node":{"id":"101978470027541866","text":"Facebook","upvoted":false,"__typename":"Reason","upvotesCount":15},"__typename":"ReasonEdge"},{"node":{"id":"101978470164514507","text":"Sends data to facebook","upvoted":false,"__typename":"Reason","upvotesCount":6},"__typename":"ReasonEdge"},{"node":{"id":"101978470163827459","text":"Should be installed separately","upvoted":false,"__typename":"Reason","upvotesCount":3},"__typename":"ReasonEdge"},{"node":{"id":"103697585638518448","text":"Cannot publish to registry other than npm","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"}],"pageInfo":{"endCursor":"NA","__typename":"PageInfo","hasNextPage":false},"__typename":"ReasonConnection"}},"privateStacks({\"first\":7})":{"type":"id","generated":true,"id":"$Tool:101231776364087566.privateStacks({\"first\":7})","typename":"StackConnection"},"teams({\"first\":7})":{"type":"id","generated":true,"id":"$Tool:101231776364087566.teams({\"first\":7})","typename":"TeamConnection"},"cachedCompanyStacksUsing":{"type":"json","json":{"count":1756,"edges":[{"node":{"owner":{"name":"StackShare","imageUrl":"https://img.stackshare.io/company/1595/default_0ef9f2b4cb2992a16b9ce66eafac78c97fa851e4.png","thumbUrl":"https://img.stackshare.io/company/1595/thumb_0ef9f2b4cb2992a16b9ce66eafac78c97fa851e4.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/stackshare/stackshare"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Hepsiburada","imageUrl":"https://img.stackshare.io/company/29765/11753097.png","thumbUrl":"https://img.stackshare.io/company/29765/thumb_11753097.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/hepsiburada/hepsiburada"},"__typename":"StackEdge"},{"node":{"owner":{"name":"DoorDash","imageUrl":"https://img.stackshare.io/company/3995/default_35666fa639c12931b04644a36acd00792afce0ae.jpg","thumbUrl":"https://img.stackshare.io/company/3995/thumb_35666fa639c12931b04644a36acd00792afce0ae.jpg","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/doordash/doordash"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Atolye15","imageUrl":"https://img.stackshare.io/company/34122/default_4765ff1751ec414598e2001cc7c3a01e978249b3.png","thumbUrl":"https://img.stackshare.io/company/34122/thumb_4765ff1751ec414598e2001cc7c3a01e978249b3.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/atolye15/stack"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Revolut","imageUrl":"https://img.stackshare.io/company/17445/default_b8eec4bab7316116a7e0909123bf7e3df6e028aa.png","thumbUrl":"https://img.stackshare.io/company/17445/thumb_b8eec4bab7316116a7e0909123bf7e3df6e028aa.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/revolut/revolut"},"__typename":"StackEdge"},{"node":{"owner":{"name":"trivago","imageUrl":"https://img.stackshare.io/company/2084/default_79d34713b767344ee779dd08bde3899f9a7939b4.png","thumbUrl":"https://img.stackshare.io/company/2084/thumb_79d34713b767344ee779dd08bde3899f9a7939b4.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/trivago/trivago"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Alibaba Group","imageUrl":"https://img.stackshare.io/company/162563/default_778ed136d08980e90396ec94375170f61fd083a4.png","thumbUrl":"https://img.stackshare.io/company/162563/thumb_778ed136d08980e90396ec94375170f61fd083a4.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/alibaba-group/alibaba-travels"},"__typename":"StackEdge"}],"pageInfo":{"endCursor":"Nw","__typename":"PageInfo","hasNextPage":true},"__typename":"StackConnection"}},"cachedAllToolIntegrations":{"type":"json","json":{"count":18,"edges":[{"node":{"name":"JavaScript","path":"/javascript","imageUrl":"https://img.stackshare.io/service/1209/javascript.jpeg","thumbUrl":"https://img.stackshare.io/service/1209/thumb_javascript.jpeg","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"npm","path":"/npm","imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","thumbUrl":"https://img.stackshare.io/package_manager/1120/thumb_lejvzrnlpb308aftn31u.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"phpMyAdmin","path":"/phpmyadmin","imageUrl":"https://img.stackshare.io/service/2102/3pl3dljQ_400x400.png","thumbUrl":"https://img.stackshare.io/service/2102/thumb_3pl3dljQ_400x400.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Dependabot","path":"/dependabot","imageUrl":"https://img.stackshare.io/service/7414/default_10dc0b08cff1f1e91e62a7dac5d50046690d3dbb.png","thumbUrl":"https://img.stackshare.io/service/7414/thumb_10dc0b08cff1f1e91e62a7dac5d50046690d3dbb.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Bit","path":"/bit","imageUrl":"https://img.stackshare.io/service/4616/QP1hRAU5_400x400.jpg","thumbUrl":"https://img.stackshare.io/service/4616/thumb_QP1hRAU5_400x400.jpg","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"WhiteSource","path":"/whitesource","imageUrl":"https://img.stackshare.io/service/7148/sJbRTaNm_400x400.png","thumbUrl":"https://img.stackshare.io/service/7148/thumb_sJbRTaNm_400x400.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"FOSSA","path":"/fossa","imageUrl":"https://img.stackshare.io/service/7083/fossa-glyph-dark.png","thumbUrl":"https://img.stackshare.io/service/7083/thumb_fossa-glyph-dark.png","__typename":"Tool"},"__typename":"ToolEdge"}],"pageInfo":{"endCursor":"Nw","__typename":"PageInfo","hasNextPage":true},"__typename":"ToolConnection"}},"officialArticles({\"first\":5})":{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5})","typename":"ArticleConnection"},"__typename":"Tool","title":"A new package manager for JavaScript","verified":false,"fans":14768,"followContext":null},"$Tool:101231776364087566.vulnerabilities":{"edges":[],"__typename":"VulnerabilityConnection"},"$Tool:101231776364087566.layer":{"name":"DevOps","slug":"devops","__typename":"Layer"},"$Tool:101231776364087566.category":{"name":"Build, Test, Deploy","slug":"build-test-deploy","__typename":"Category"},"$Tool:101231776364087566.function":{"name":"Front End Package Manager","slug":"front-end-package-manager","__typename":"Function"},"$Tool:101231776364087566.privateStacks({\"first\":7})":{"edges":[],"__typename":"StackConnection"},"$Tool:101231776364087566.teams({\"first\":7})":{"edges":[],"__typename":"TeamConnection"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.0.node":{"title":"Recommended security update","importSource":null,"outboundUrl":"https://yarnpkg.com/blog/2019/07/12/recommended-security-update/","discussionScore":null,"publishedAt":"2019-07-12T23:44:03Z","commentCount":0,"__typename":"Article"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.0":{"node":{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.0.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.1.node":{"title":"Dependencies Done Right","importSource":null,"outboundUrl":"https://yarnpkg.com/blog/2018/04/18/dependencies-done-right/","discussionScore":null,"publishedAt":"2018-04-18T08:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.1":{"node":{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.1.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.2.node":{"title":"Ease the Transition to a Monorepo with Focused Workspaces","importSource":null,"outboundUrl":"https://yarnpkg.com/blog/2018/05/18/focused-workspaces/","discussionScore":null,"publishedAt":"2018-05-18T00:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.2":{"node":{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.2.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.3.node":{"title":"Yarn import now uses package-lock.json","importSource":null,"outboundUrl":"https://yarnpkg.com/blog/2018/06/04/yarn-import-package-lock/","discussionScore":null,"publishedAt":"2018-06-04T08:00:03Z","commentCount":0,"__typename":"Article"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.3":{"node":{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.3.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.4.node":{"title":"nohoist in Workspaces","importSource":null,"outboundUrl":"https://yarnpkg.com/blog/2018/02/15/nohoist/","discussionScore":null,"publishedAt":"2018-02-15T08:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.4":{"node":{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.4.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231776364087566.officialArticles({\"first\":5})":{"edges":[{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.0","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.1","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.2","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.3","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231776364087566.officialArticles({\"first\":5}).edges.4","typename":"ArticleEdge"}],"__typename":"ArticleConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"})":{"cachedAlternativeTools":{"type":"json","json":{"count":22,"edges":[{"node":{"id":"101231773895058604","name":"npm","__typename":"Tool","description":"npm is the command-line interface to the npm ecosystem. It is battle-tested, surprisingly flexible, and used by hundreds of thousands of JavaScript developers every day."},"__typename":"ToolEdge"},{"node":{"id":"101231776543564264","name":"Lerna","__typename":"Tool","description":"It is a popular and widely used package written in JavaScript. It optimizes the workflow around managing multi-package repositories with git and npm."},"__typename":"ToolEdge"},{"node":{"id":"101231774127644781","name":"Composer","__typename":"Tool","description":"It is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you."},"__typename":"ToolEdge"},{"node":{"id":"101231774416981034","name":"Homebrew","__typename":"Tool","description":"Homebrew installs the stuff you need that Apple didn’t. Homebrew installs packages to their own directory and then symlinks their files into /usr/local."},"__typename":"ToolEdge"},{"node":{"id":"101231774515240522","name":"NuGet","__typename":"Tool","description":"A free and open-source package manager designed for the Microsoft development platform. It is also distributed as a Visual Studio extension."},"__typename":"ToolEdge"}],"__typename":"ToolConnection"}},"contactEnabledTools":[],"jobs":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).jobs","typename":"JobConnection"},"featuredPosts":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts","typename":"FeaturedPostConnection"},"applesToOranges":true,"content1":"","content2":"","topContent":"","bottomContent":"","packageStackup":false,"screenshotImageUrl":null,"function":"Package Managers","path":"/stackups/pnpm-vs-yarn","title":"Yarn vs pnpm","seoUpdatedAt":null,"cachedStackDecisionsGetAdvice":{"type":"json","json":{"count":1,"edges":[{"node":{"id":"102623239805976070","user":{"id":"102366402938755636","title":null,"imageUrl":"https://img.stackshare.io/user/299852/default_e6c5c079eeed2f178ff111094f79fc759338903b.png","thumbUrl":"https://img.stackshare.io/user/299852/thumb_e6c5c079eeed2f178ff111094f79fc759338903b.png","username":"stackbot","__typename":"User","companyName":null,"displayName":"StackShare Editors"},"stack":null,"topics":[],"answers":{"count":14,"edges":[{"node":{"id":"102183598405625910","link":null,"user":{"id":"101871041581056724","path":"/juliancruzsanchez","title":"Lead Developer","imageUrl":"https://img.stackshare.io/user/290046/default_17a532d247e466baa46f55d1b3d957814be75fdb.jpeg","username":"juliancruzsanchez","__typename":"User","companyName":"Chore Champion","displayName":"Julian Sanchez"},"draft":false,"topics":[],"company":{"id":"101871063575266504","name":"Chore Champion","path":"/companies/chore-champion","slug":"chore-champion","imageUrl":"https://img.stackshare.io/company/33043/default_5d68b03ee13641b070128f8a75b072ad942bf8eb.png","__typename":"Company"},"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"102183598405625910","services":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"createdAt":"2019-05-30T06:32:53Z","fromTools":[],"viewCount":186706,"__typename":"StackDecision","bookmarked":false,"rawContent":"We use @{Yarn}|tool:101231776364087566| because it allows us to more simply manage our node_modules. It also simplifies commands and increases speed when installing modules. Our teams module download time was cut in half after switching from NPM to Yarn. We now require all employees to use Yarn (to prevent errors with package-lock.json and yarn.lock).","htmlContent":"<p>We use <span class=\"tool\">Yarn</span> because it allows us to more simply manage our node_modules. It also simplifies commands and increases speed when installing modules. Our teams module download time was cut in half after switching from NPM to Yarn. We now require all employees to use Yarn (to prevent errors with package-lock.json and yarn.lock).</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-05-30T06:32:00Z","decisionType":"giveAdvice","rootComments":[{"id":"103660171660930508","user":{"id":"101232011608946055","path":"/damianesteban","imageUrl":"https://img.stackshare.io/user/45603/default_722313e680e9a456d1a01cddf50c790025614c8b.jpg","__typename":"User","displayName":"Damian Esteban"},"content":"We recently made the switch to Yarn mostly because of workspaces, speed, and the features in the Yarn v2 release. It has been great.","flagged":false,"replies":[],"upvoted":false,"parentId":null,"postedAt":"2020-02-15T01:04:53Z","__typename":"Comment","upvotesCount":1}],"subjectTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"upvotesCount":11,"commentsCount":1},"__typename":"StackDecisionEdge"},{"node":{"id":"101976572231515026","link":null,"user":{"id":"101232078328820838","path":"/Pustelto","title":"","imageUrl":"https://img.stackshare.io/user/172672/default_55795788f32eb9bf47b14cafc7691e5c20f4ec22.jpeg","username":"Pustelto","__typename":"User","companyName":"","displayName":"Tomáš Pustelník"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101976572231515026","services":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"createdAt":"2019-04-23T17:03:24Z","fromTools":[],"viewCount":177206,"__typename":"StackDecision","bookmarked":false,"rawContent":"I use @{npm}|tool:101231773895058604| since new version is pretty fast as well (Yarn may be still faster a bit but the difference isn't huge). No need for other dependency and mainly Yarn sometimes do not work. Sometimes when I want to install project dependencies I got error using Yarn but with npm everything is installed correctly.","htmlContent":"<p>I use <span class=\"tool\">npm</span> since new version is pretty fast as well (Yarn may be still faster a bit but the difference isn't huge). No need for other dependency and mainly Yarn sometimes do not work. Sometimes when I want to install project dependencies I got error using Yarn but with npm everything is installed correctly.</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-23T17:03:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"upvotesCount":8,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101985706297519161","link":null,"user":{"id":"101232131762789476","path":"/marknelissen","title":"CTO","imageUrl":"https://img.stackshare.io/user/274851/default_8284a838d5c8b54e4f694455a45c1c58ed7c01db.jpeg","username":"marknelissen","__typename":"User","companyName":"Gemsotec bvba","displayName":"Mark Nelissen"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101985706297519161","services":[{"id":"101231773849098825","fans":134838,"name":"React","path":"/react","slug":"react","title":"A JavaScript library for building user interfaces","votes":3947,"stacks":141911,"imageUrl":"https://img.stackshare.io/service/1020/OYIaJ1KK.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/react","followContext":null},{"id":"101231774098455524","fans":66054,"name":"TypeScript","path":"/typescript","slug":"typescript","title":"A superset of JavaScript that compiles to clean JavaScript output","votes":473,"stacks":73213,"imageUrl":"https://img.stackshare.io/service/1612/bynNY5dJ.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/typescript","followContext":null},{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null},{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"createdAt":"2019-04-25T07:46:19Z","fromTools":[],"viewCount":176121,"__typename":"StackDecision","bookmarked":false,"rawContent":"I use @{npm}|tool:101231773895058604| because I also mainly use @{React}|tool:1020| and @{TypeScript}|tool:1612|. Since several typings (from DefinitelyTyped) depend on the React typings, @{Yarn}|tool:5848| tends to mess up which leads to duplicate libraries present (different versions of the same type definition), which hinders the Typescript compiler. Npm always resolves to a single version per transitive dependency. At least that's my experience with both.","htmlContent":"<p>I use <span class=\"tool\">npm</span> because I also mainly use <span class=\"tool\">React</span> and <span class=\"tool\">TypeScript</span>. Since several typings (from DefinitelyTyped) depend on the React typings, <span class=\"tool\">Yarn</span> tends to mess up which leads to duplicate libraries present (different versions of the same type definition), which hinders the Typescript compiler. Npm always resolves to a single version per transitive dependency. At least that's my experience with both.</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-25T07:46:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null},{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"upvotesCount":5,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101981514516848693","link":null,"user":{"id":"101271960977802400","path":"/zen-li","title":null,"imageUrl":"https://img.stackshare.io/user/276878/default_b929655eff606ed0b8689a57f929f2d036bf07e8.png","username":"zen-li","__typename":"User","companyName":null,"displayName":"zen-li"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101981514516848693","services":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"createdAt":"2019-04-24T14:00:18Z","fromTools":[],"viewCount":174757,"__typename":"StackDecision","bookmarked":false,"rawContent":"p.s.\r\n\r\nI am not sure about the performance of the latest version of npm, whether it is different from my understanding of it below. Because I use npm very rarely when I had the following knowledge.\r\n\r\n------⏬\r\n\r\nI use @{Yarn}|tool:101231776364087566| because, first, yarn is the first tool to lock the version. Second, although npm also supports the lock version, when you use npm to lock the version, and then use package-lock.json on other systems, package-lock.json Will be modified. You understand what I mean, when you deploy projects based on Git...","htmlContent":"<p>p.s.</p>\r\n\r\n<p>I am not sure about the performance of the latest version of npm, whether it is different from my understanding of it below. Because I use npm very rarely when I had the following knowledge.</p>\r\n\r\n<p>------⏬</p>\r\n\r\n<p>I use <span class=\"tool\">Yarn</span> because, first, yarn is the first tool to lock the version. Second, although npm also supports the lock version, when you use npm to lock the version, and then use package-lock.json on other systems, package-lock.json Will be modified. You understand what I mean, when you deploy projects based on Git...</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-24T14:00:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"upvotesCount":5,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"102753437112655482","link":null,"user":{"id":"101232132203077526","path":"/FerJSsilva","title":"","imageUrl":"https://img.stackshare.io/user/275844/default_11ba8d8905cda3ae082657d15144793622c2d7eb.jpeg","username":"FerJSsilva","__typename":"User","companyName":"","displayName":"Fernando Silva"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"102753437112655482","services":[],"createdAt":"2019-09-07T21:50:22Z","fromTools":[],"viewCount":173280,"__typename":"StackDecision","bookmarked":false,"rawContent":"As far as I know Yarn is a super module of NPM. But it **still needs npm** to run.\n\nYarn was developed by Facebook's guys to fix some npm issues and performance.\n\nIf you use the last version of npm most of this problem does not exist anymore.\n\nYou can choose the option which makes you more confortable. I like using yarn because I'm used to it.\n\nIn the end the packages will be the same. Just try both and choose the one you feel more confortable. :)\n\n","htmlContent":"<p>As far as I know Yarn is a super module of NPM. But it <strong>still needs npm</strong> to run.</p>\n\n<p>Yarn was developed by Facebook's guys to fix some npm issues and performance.</p>\n\n<p>If you use the last version of npm most of this problem does not exist anymore.</p>\n\n<p>You can choose the option which makes you more confortable. I like using yarn because I'm used to it.</p>\n\n<p>In the end the packages will be the same. Just try both and choose the one you feel more confortable. :)</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-09-07T21:50:22Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"upvotesCount":4,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101980944144821506","link":null,"user":{"id":"101232051396982528","path":"/SlyDen","title":"Lead Software Engineer","imageUrl":"https://img.stackshare.io/user/124129/default_fac78567a2b11166aef7428613174de52bad3bae.jpeg","username":"SlyDen","__typename":"User","companyName":null,"displayName":"Denys Slipetskyy"},"draft":false,"topics":[],"company":{"id":"101231712033522745","name":"EPAM Systems","path":"/companies/epam-systems","slug":"epam-systems","imageUrl":"https://img.stackshare.io/company/5409/default_c2d2f718a34b396dc8151794b8053c0298a20c06.jpg","__typename":"Company"},"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101980944144821506","services":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"createdAt":"2019-04-24T11:35:15Z","fromTools":[],"viewCount":173501,"__typename":"StackDecision","bookmarked":false,"rawContent":"I use @{Yarn}|tool:101231776364087566| because it process my dependencies way faster, predictable deps resolution order, upgrade-interactive is very handy + some Yarn specific features (workspaces, Plug’n’Play alternative installation strategy) ...","htmlContent":"<p>I use <span class=\"tool\">Yarn</span> because it process my dependencies way faster, predictable deps resolution order, upgrade-interactive is very handy + some Yarn specific features (workspaces, Plug’n’Play alternative installation strategy) ...</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-24T11:35:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"107016985225797219","link":null,"user":{"id":"101232112552886663","path":"/hagemt","title":"Principal Software Engineer","imageUrl":"https://img.stackshare.io/user/237008/default_3086170d29f6244c0bc3d6b15d2cfbaa6d2b3ba4.png","username":"hagemt","__typename":"User","companyName":"Socotra","displayName":"Tor Hagemann"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"107016985225797219","services":[],"createdAt":"2021-09-29T21:06:43Z","fromTools":[],"viewCount":73498,"__typename":"StackDecision","bookmarked":false,"rawContent":"You should use whichever had the best DX (developer experience) for your team. If you are doing a massive front-end project, consider yarn if not only because it makes it a snap to go from zero to ready. What some people say about `npm` being more stable or easier for smaller projects is highly true as well. (not to mention, you sometimes have to install yarn) But, note that official NodeJS Docker images ship with both npm and yarn. If you want to use yarn, put `package-lock=false` and optionally `save-exact=true` in your project's `.npmrc` file. Compare whether you prefer the ergonomics of `yarn global add` over `npm install -g` or see fewer meaningless warnings for the specific set of dependencies you leverage.","htmlContent":"<p>You should use whichever had the best DX (developer experience) for your team. If you are doing a massive front-end project, consider yarn if not only because it makes it a snap to go from zero to ready. What some people say about <code>npm</code> being more stable or easier for smaller projects is highly true as well. (not to mention, you sometimes have to install yarn) But, note that official NodeJS Docker images ship with both npm and yarn. If you want to use yarn, put <code>package-lock=false</code> and optionally <code>save-exact=true</code> in your project's <code>.npmrc</code> file. Compare whether you prefer the ergonomics of <code>yarn global add</code> over <code>npm install -g</code> or see fewer meaningless warnings for the specific set of dependencies you leverage.</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2021-09-29T21:06:43Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null},{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101987363682470495","link":null,"user":{"id":"101232122902510887","path":"/Obapelumi","title":null,"imageUrl":"https://img.stackshare.io/user/257371/default_705a18e304106b3c738c0989c5e3e5b053e535c5.jpeg","username":"Obapelumi","__typename":"User","companyName":null,"displayName":"Obapelumi"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101987363682470495","services":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"createdAt":"2019-04-25T14:47:49Z","fromTools":[],"viewCount":173197,"__typename":"StackDecision","bookmarked":false,"rawContent":" I am a minimalist too. I once had issues with installing Nuxt.js using NPM so I had to install @{Yarn}|tool:5848| but I also found that the Dev experience was much better","htmlContent":"<p>I am a minimalist too. I once had issues with installing Nuxt.js using NPM so I had to install <span class=\"tool\">Yarn</span> but I also found that the Dev experience was much better</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-25T14:47:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101991649472457545","link":null,"user":{"id":"101232106703162555","path":"/tataata","title":"Frontend designer and developer","imageUrl":"https://img.stackshare.io/user/225785/default_e033f4da98bea5f34a3776c83c5875ad7d64c307.jpeg","username":"tataata","__typename":"User","companyName":null,"displayName":"tataata"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101991649472457545","services":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"createdAt":"2019-04-26T08:57:45Z","fromTools":[],"viewCount":173236,"__typename":"StackDecision","bookmarked":false,"rawContent":" @{Yarn}|tool:101231776364087566| made it painless for the team to sync on versions of packages that we use on the project <3 ","htmlContent":"<p><span class=\"tool\">Yarn</span> made it painless for the team to sync on versions of packages that we use on the project &lt;3 </p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-26T08:57:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101976405870675588","link":null,"user":{"id":"101232116934981026","path":"/MyIsaak","title":null,"imageUrl":"https://img.stackshare.io/user/245305/default_4298308c0366c161886da6cf601f2f3b0c6a9f32.jpeg","username":"MyIsaak","__typename":"User","companyName":null,"displayName":"MyIsaak"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101976405870675588","services":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"createdAt":"2019-04-23T16:21:06Z","fromTools":[],"viewCount":173277,"__typename":"StackDecision","bookmarked":false,"rawContent":"I use @{npm}|tool:101231773895058604| because its the official package manager for Node. It's reliability, security and speed has increased over time so the battle is over! ","htmlContent":"<p>I use <span class=\"tool\">npm</span> because its the official package manager for Node. It's reliability, security and speed has increased over time so the battle is over! </p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-23T16:21:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101743960056230311","link":null,"user":{"id":"101232126602256318","path":"/131","title":"CWO","imageUrl":"https://img.stackshare.io/user/264483/default_4826f8bd76a744d41dce535a63cc7754b6895ba4.jpeg","username":"131","__typename":"User","companyName":"IVS","displayName":"Francois Leurent"},"draft":false,"topics":[],"company":{"id":"101231723315122234","name":"IVS","path":"/companies/ivs","slug":"ivs","imageUrl":"https://img.stackshare.io/company/30378/default_49c2c12fcdebc77b560e31d960f4b69a533b65ef.png","__typename":"Company"},"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101743960056230311","services":[],"createdAt":"2018-09-15T17:12:58Z","fromTools":[],"viewCount":173371,"__typename":"StackDecision","bookmarked":false,"rawContent":"We tend to stick to npm, yarn is only a fancy alternative, not 10x better. Using a self -hosted private repository (via sinopia/npm-mirror) make package locking (mostly) pointless.","htmlContent":"<p>We tend to stick to npm, yarn is only a fancy alternative, not 10x better. Using a self -hosted private repository (via sinopia/npm-mirror) make package locking (mostly) pointless.</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-30T19:11:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101976207607809118","link":null,"user":{"id":"101232004889758843","path":"/joemewes","title":"Mr","imageUrl":"https://img.stackshare.io/user/33181/default_eb83a27c5dc4a85ac69c533a89e5704b1858ad14.png","username":"joemewes","__typename":"User","companyName":"4 All Digital","displayName":"Digital All"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101976207607809118","services":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"createdAt":"2019-04-23T15:30:41Z","fromTools":[],"viewCount":173277,"__typename":"StackDecision","bookmarked":false,"rawContent":"I use @{npm}|tool:101231773895058604| because its packaged with node installation and handles npm tokens in CI/CD tools for private packages/libraries. ","htmlContent":"<p>I use <span class=\"tool\">npm</span> because its packaged with node installation and handles npm tokens in CI/CD tools for private packages/libraries. </p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-23T15:30:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101984626605575198","link":null,"user":{"id":"101232114808307797","path":"/izzur-zuhri","title":"Full Stack Developer","imageUrl":"https://img.stackshare.io/user/241225/default_f587fa223d4cbdf3ec9a77d9aa70345b0f09b649.jpeg","username":"izzur-zuhri","__typename":"User","companyName":"","displayName":"Izzur Zuhri"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101984626605575198","services":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"createdAt":"2019-04-25T03:11:44Z","fromTools":[],"viewCount":173184,"__typename":"StackDecision","bookmarked":false,"rawContent":"I use @{npm}|tool:101231773895058604| because it has a lot of community support and the performance difference with alternative tool is not so significant for me.","htmlContent":"<p>I use <span class=\"tool\">npm</span> because it has a lot of community support and the performance difference with alternative tool is not so significant for me.</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-25T03:11:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"101976450283972106","link":null,"user":{"id":"101232106140050277","path":"/shuuji3","title":"","imageUrl":"https://img.stackshare.io/user/224540/default_8e671617ee4680342da18b76a0d6eaace31cb2b6.png","username":"shuuji3","__typename":"User","companyName":"shuuji3.xyz","displayName":"Shuuji TAKAHASHI"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"101976450283972106","services":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"createdAt":"2019-04-23T16:32:24Z","fromTools":[],"viewCount":173358,"__typename":"StackDecision","bookmarked":false,"rawContent":"I use @{Yarn}|tool:101231776364087566| because it outputs nice progress messages with cute emoji and installs packages quickly if the package is cached. Also, Yarn creates `yarn.lock` file which makes the developer use the consistent environment.","htmlContent":"<p>I use <span class=\"tool\">Yarn</span> because it outputs nice progress messages with cute emoji and installs packages quickly if the package is cached. Also, Yarn creates <code>yarn.lock</code> file which makes the developer use the consistent environment.</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2019-04-23T16:32:00Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"}],"pageInfo":{"endCursor":"MTQ","__typename":"PageInfo","hasNextPage":false},"__typename":"StackDecisionConnection"},"company":null,"private":false,"toTools":[],"publicId":"102623239805976070","services":[{"name":"Node.js","imageUrl":"https://img.stackshare.io/service/1011/n1JRsFeB_400x400.png","thumbUrl":"https://img.stackshare.io/service/1011/thumb_n1JRsFeB_400x400.png","__typename":"Tool"},{"name":"npm","imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","thumbUrl":"https://img.stackshare.io/package_manager/1120/thumb_lejvzrnlpb308aftn31u.png","__typename":"Tool"},{"name":"Yarn","imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","thumbUrl":"https://img.stackshare.io/service/5848/thumb_44mC-kJ3.jpg","__typename":"Tool"}],"fromTools":[],"viewCount":200212,"__typename":"StackDecision","htmlContent":"<p>From a StackShare Community member: “I’m a freelance web developer (I mostly use <span class=\"tool\">Node.js</span>) and for future projects I’m debating between <span class=\"tool\">npm</span> or <span class=\"tool\">Yarn</span> as my default package manager. I’m a minimalist so I hate installing software if I don’t need to- in this case that would be Yarn. For those who made the switch from npm to Yarn, what benefits have you noticed? For those who stuck with npm, are you happy you with it?\"</p>","publishedAt":"2019-04-23T21:59:00Z","decisionType":"getAdvice","subjectTools":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null},{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"upvotesCount":7},"__typename":"StackDecisionEdge"}],"pageInfo":{"endCursor":"MQ","__typename":"PageInfo","hasNextPage":false},"__typename":"StackDecisionConnection"}},"privateStackDecisionsGetAdvice({\"first\":3})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).privateStackDecisionsGetAdvice({\"first\":3})","typename":"StackDecisionConnection"},"cachedStackDecisions":{"type":"json","json":{"count":2,"edges":[{"node":{"id":"103267297466989413","user":{"id":"102966487267358125","title":"Senior Software Engineer","imageUrl":"https://img.stackshare.io/user/313821/default_fae6720b9cd11253c72921fd709bf59483feabd1.jpeg","thumbUrl":"https://img.stackshare.io/user/313821/thumb_fae6720b9cd11253c72921fd709bf59483feabd1.jpeg","username":"oleks-fedotov","__typename":"User","companyName":"joyn","displayName":"Oleksandr Fedotov"},"stack":{"id":"102999030691767661","name":"smart-tv","path":"/joyn/smart-tv","owner":{"id":"102965313097062877","name":"joyn","slug":"joyn","imageUrl":"https://img.stackshare.io/company/159381/default_cf4c25fd04e5ad4f5723ff256899b5f00f3d120a.png","__typename":"Company"},"private":false,"imageUrl":"https://img.stackshare.io/stack/513316/default_e195cee747eee247f74a068ac6b212d6f5080820.png","__typename":"Stack","identifier":"joyn/smart-tv"},"topics":[],"company":{"name":"joyn","path":"/companies/joyn","features":[],"imageUrl":"https://img.stackshare.io/company/159381/default_cf4c25fd04e5ad4f5723ff256899b5f00f3d120a.png","thumbUrl":"https://img.stackshare.io/company/159381/thumb_cf4c25fd04e5ad4f5723ff256899b5f00f3d120a.png","__typename":"Company"},"private":false,"toTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"publicId":"103267297466989413","services":[],"fromTools":[{"id":"101231776543564264","fans":249,"name":"Lerna","path":"/lerna","slug":"lerna","title":"A tool for managing JavaScript projects","votes":0,"stacks":519,"imageUrl":"https://img.stackshare.io/service/6207/OwqAUSQi_400x400.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/lerna","followContext":null},{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"viewCount":204789,"__typename":"StackDecision","htmlContent":"<p>As we have to build the application for many different TV platforms we want to split the application logic from the device/platform specific code. Previously we had different repositories and it was very hard to keep the development process when changes were done in multiple repositories, as we had to synchronize code reviews as well as merging and then updating the dependencies of projects. This issues would be even more critical when building the project from scratch what we did at Joyn. Therefor to keep all code in one place, at the same time keeping in separated in different modules we decided to give a try to monorepo. First we tried out lerna which was fine at the beginning, but later along the way we had issues with adding new dependencies which came out of the blue and were not easy to fix. Next round of evolution was <a href=\"https://yarnpkg.com/lang/en/docs/workspaces/\" rel=\"nofollow noopener\" target=\"_blank\">yarn workspaces</a>, we are still using it and are pretty happy with dev experience it provides. And one more advantage we got when switched to yarn workspaces that we also switched from npm to yarn what improved the state of the lock file a lot, because with npm package-lock file was updated every time you run <code>npm install</code>, frequent updates of package-lock file were causing very often merge conflicts. So right now we not just having faster dependencies installation time but also no conflicts coming from lock file.</p>","publishedAt":"2019-12-07T15:51:49Z","decisionType":"tool","subjectTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null},{"id":"101231776543564264","fans":249,"name":"Lerna","path":"/lerna","slug":"lerna","title":"A tool for managing JavaScript projects","votes":0,"stacks":519,"imageUrl":"https://img.stackshare.io/service/6207/OwqAUSQi_400x400.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/lerna","followContext":null},{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"upvotesCount":3},"__typename":"StackDecisionEdge"},{"node":{"id":"103170189586345499","user":{"id":"102931754714584425","title":"Head of Frontend","imageUrl":"https://img.stackshare.io/user/312773/default_cb52951ae4bbdbc14e85f12f80fc34067efc7dff.jpeg","thumbUrl":"https://img.stackshare.io/user/312773/thumb_cb52951ae4bbdbc14e85f12f80fc34067efc7dff.jpeg","username":"pbambusek","__typename":"User","companyName":"Mews","displayName":"Petr Bambušek"},"stack":{"id":"101286804925998457","name":"Mews","path":"/mews/mews","owner":{"id":"101286771288260547","name":"Mews","slug":"mews","imageUrl":"https://img.stackshare.io/company/31795/default_d82ea5fe5c475a0f2e8b971d93eb0d3b566d5303.png","__typename":"Company"},"private":false,"imageUrl":"https://img.stackshare.io/stack/351658/default_22b4dae105b85879ee8b23abddb4e8ecc42cb02d.png","__typename":"Stack","identifier":"mews/mews"},"topics":[],"company":{"name":"Mews","path":"/companies/mews","features":[],"imageUrl":"https://img.stackshare.io/company/31795/default_d82ea5fe5c475a0f2e8b971d93eb0d3b566d5303.png","thumbUrl":"https://img.stackshare.io/company/31795/thumb_d82ea5fe5c475a0f2e8b971d93eb0d3b566d5303.png","__typename":"Company"},"private":false,"toTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null}],"publicId":"103170189586345499","services":[],"fromTools":[{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"viewCount":215303,"__typename":"StackDecision","htmlContent":"<p>This was no real choice - we switched the moment Yarn was available, and never looked back. Yarn is the only reasonable frontend package manager that's actually being developed. They even aim to heal the node_modules madness with v2! Npm is just copying its ideas on top of introducing massive bugs with every change. </p>","publishedAt":"2019-11-20T12:16:00Z","decisionType":"tool","subjectTools":[{"id":"101231776364087566","fans":14594,"name":"Yarn","path":"/yarn","slug":"yarn","title":"A new package manager for JavaScript","votes":143,"stacks":17932,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/yarn","followContext":null},{"id":"101231773895058604","fans":81093,"name":"npm","path":"/npm","slug":"npm","title":"The package manager for JavaScript.","votes":1633,"stacks":85599,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/npm","followContext":null}],"upvotesCount":2},"__typename":"StackDecisionEdge"}],"pageInfo":{"endCursor":"Mg","__typename":"PageInfo","hasNextPage":false},"__typename":"StackDecisionConnection"}},"privateStackDecisions({\"first\":5})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).privateStackDecisions({\"first\":5})","typename":"StackDecisionConnection"},"cachedFooterRelatedStackups":{"type":"json","json":[{"path":"/stackups/npm-vs-yarn","title":"Yarn vs npm","__typename":"Stackup"},{"path":"/stackups/bower-vs-npm-vs-yarn","title":"Bower vs Yarn vs npm","__typename":"Stackup"},{"path":"/stackups/bower-vs-yarn","title":"Bower vs Yarn","__typename":"Stackup"},{"path":"/stackups/browserify-vs-yarn","title":"Browserify vs Yarn","__typename":"Stackup"},{"path":"/stackups/requirejs-vs-yarn","title":"RequireJS vs Yarn","__typename":"Stackup"}]},"footerTopStackups":[{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTopStackups.0","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTopStackups.1","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTopStackups.2","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTopStackups.3","typename":"Stackup"}],"footerTrendingStackups":[{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.0","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.1","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.2","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.3","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.4","typename":"Stackup"}],"__typename":"Stackup","jobs({\"first\":8})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).jobs({\"first\":8})","typename":"JobConnection"},"featuredPosts({\"first\":8})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8})","typename":"FeaturedPostConnection"}},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).jobs":{"count":2,"__typename":"JobConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts":{"count":3,"__typename":"FeaturedPostConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).privateStackDecisionsGetAdvice({\"first\":3})":{"count":0,"pageInfo":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).privateStackDecisionsGetAdvice({\"first\":3}).pageInfo","typename":"PageInfo"},"edges":[],"__typename":"StackDecisionConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).privateStackDecisionsGetAdvice({\"first\":3}).pageInfo":{"endCursor":null,"hasNextPage":false,"__typename":"PageInfo"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).privateStackDecisions({\"first\":5})":{"count":0,"pageInfo":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).privateStackDecisions({\"first\":5}).pageInfo","typename":"PageInfo"},"edges":[],"__typename":"StackDecisionConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).privateStackDecisions({\"first\":5}).pageInfo":{"hasNextPage":false,"endCursor":null,"__typename":"PageInfo"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTopStackups.0":{"title":"Bitbucket vs GitHub vs GitLab","path":"/stackups/bitbucket-vs-github-vs-gitlab","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTopStackups.1":{"title":"Bootstrap vs Materialize","path":"/stackups/bootstrap-vs-materialize","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTopStackups.2":{"title":"HipChat vs Mattermost vs Slack","path":"/stackups/hipchat-vs-mattermost-vs-slack","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTopStackups.3":{"title":"Postman vs Swagger UI","path":"/stackups/postman-vs-swagger-ui","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.0":{"title":"Django vs Laravel vs Node.js","path":"/stackups/django-vs-laravel-vs-nodejs","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.1":{"title":"Bootstrap vs Foundation vs Material-UI","path":"/stackups/bootstrap-vs-foundation-vs-material-ui","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.2":{"title":"Node.js vs Spring Boot","path":"/stackups/nodejs-vs-spring-boot","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.3":{"title":"Flyway vs Liquibase","path":"/stackups/flyway-vs-liquibase","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).footerTrendingStackups.4":{"title":"AWS CodeCommit vs Bitbucket vs GitHub","path":"/stackups/aws-codecommit-vs-bitbucket-vs-github","__typename":"Stackup"},"Job:108996469679210872":{"name":"GCP Data Engineer (REMOTE)","id":"108996469679210872","angellistJobUrl":"https://careers.cbre.com/careers/JobDetail/GCP-Data-Engineer-REMOTE/82875","title":"GCP Data Engineer (REMOTE)","location":"United States of America California Sunnyvale","private":false,"services":[{"type":"id","generated":false,"id":"Tool:109274179782119617","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:105369024127621469","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:104049138318269073","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:104009810782130276","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:102265348655058340","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776063857636","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775445191553","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775436102929","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774249717985","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774127644781","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773848354670","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773531895266","typename":"Tool"}],"company":{"type":"id","generated":false,"id":"Company:107160118414842491","typename":"Company"},"__typename":"Job"},"Tool:109274179782119617":{"id":"109274179782119617","name":"Tier","slug":"tier","title":"Terraform for Stripe ","verified":true,"imageUrl":"https://img.stackshare.io/service/47971/default_07b8d6d94fc9994c7b91edfd8136959124c8288a.png","canonicalUrl":"/tier","path":"/tier","votes":0,"fans":3,"stacks":3,"following":false,"followContext":null,"__typename":"Tool"},"Tool:105369024127621469":{"id":"105369024127621469","name":"Google Workspace","slug":"google-workspace","title":"Everything you need to get anything done, now in one place","verified":false,"imageUrl":"https://img.stackshare.io/service/21740/default_1a035292a70299ebcf56b81ffe56137b4b5504e1.png","canonicalUrl":"/google-workspace","path":"/google-workspace","votes":0,"fans":111,"stacks":264,"following":false,"followContext":null,"__typename":"Tool"},"Tool:104049138318269073":{"id":"104049138318269073","name":"Collect","slug":"collect","title":"Easy to use secure portal solution to collect and manage client documents","verified":false,"imageUrl":"https://img.stackshare.io/service/12142/U9KsL1zr_400x400.jpg","canonicalUrl":"/collect","path":"/collect","votes":0,"fans":20,"stacks":17,"following":false,"followContext":null,"__typename":"Tool"},"Tool:104009810782130276":{"id":"104009810782130276","name":"STUDIO","slug":"studio","title":"Design, Collaborate, Publish without coding","verified":false,"imageUrl":"https://img.stackshare.io/service/12111/EMi6zrFB_400x400.jpg","canonicalUrl":"/studio","path":"/studio","votes":0,"fans":98,"stacks":94,"following":false,"followContext":null,"__typename":"Tool"},"Tool:102265348655058340":{"id":"102265348655058340","name":"Scope","slug":"scope","title":"Better understand the workflow of the code processes","verified":false,"imageUrl":"https://img.stackshare.io/service/11109/KteF6X89_400x400.jpg","canonicalUrl":"/scope","path":"/scope","votes":0,"fans":34,"stacks":25,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776063857636":{"id":"101231776063857636","name":"Data Studio","slug":"data-studio","title":"Your data is powerful. Use it","verified":false,"imageUrl":"https://img.stackshare.io/service/5339/default_22520817f170e749efbed2f5b3921aa849d831d1.png","canonicalUrl":"/data-studio","path":"/data-studio","votes":0,"fans":354,"stacks":350,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775445191553":{"id":"101231775445191553","name":"Google Cloud Platform","slug":"google-cloud-platform","title":"A suite of cloud computing services","verified":false,"imageUrl":"https://img.stackshare.io/service/4240/1a61e4pu_400x400.jpg","canonicalUrl":"/google-cloud-platform","path":"/google-cloud-platform","votes":13,"fans":13258,"stacks":21565,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775436102929":{"id":"101231775436102929","name":"Lucidchart","slug":"lucidchart","title":"Collaborative diagramming solution for your entire organization","verified":false,"imageUrl":"https://img.stackshare.io/service/4223/lucidchart-06-535x535.png","canonicalUrl":"/lucidchart","path":"/lucidchart","votes":0,"fans":275,"stacks":240,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774249717985":{"id":"101231774249717985","name":"Spring Framework","slug":"spring-framework","title":"An application framework and inversion of control container for the Java platform","verified":false,"imageUrl":"https://img.stackshare.io/service/2006/spring-framework-project-logo.png","canonicalUrl":"/spring-framework","path":"/spring-framework","votes":0,"fans":931,"stacks":843,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774127644781":{"id":"101231774127644781","name":"Composer","slug":"composer","title":"Dependency Manager for PHP","verified":true,"imageUrl":"https://img.stackshare.io/service/1688/New_Project__65_.png","canonicalUrl":"/composer","path":"/composer","votes":13,"fans":810,"stacks":943,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773939333405":{"id":"101231773939333405","name":"JavaScript","slug":"javascript","title":"Lightweight, interpreted, object-oriented language with first-class functions","verified":false,"imageUrl":"https://img.stackshare.io/service/1209/javascript.jpeg","canonicalUrl":"/javascript","path":"/javascript","votes":7913,"fans":262443,"stacks":273880,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773848354670":{"id":"101231773848354670","name":"AngularJS","slug":"angularjs","title":"Superheroic JavaScript MVW Framework","verified":false,"imageUrl":"https://img.stackshare.io/service/1019/square.png","canonicalUrl":"/angularjs","path":"/angularjs","votes":5234,"fans":50075,"stacks":56559,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773531895266":{"id":"101231773531895266","name":"G Suite","slug":"g-suite","title":"Collaboration and productivity apps for Business","verified":false,"imageUrl":"https://img.stackshare.io/service/247/oYkAxyQM_400x400.jpg","canonicalUrl":"/g-suite","path":"/g-suite","votes":2473,"fans":17889,"stacks":29975,"following":false,"followContext":null,"__typename":"Tool"},"Company:107160118414842491":{"imageUrl":"https://img.stackshare.io/company/171068/default_c0b85bbfd82e34f35a10a5b6ec5689ff9ea85dd2.png","name":"CBRE","id":"107160118414842491","path":"/companies/cbre","__typename":"Company"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).jobs({\"first\":8}).edges.0":{"node":{"type":"id","generated":false,"id":"Job:108996469679210872","typename":"Job"},"__typename":"JobEdge"},"Job:108706925846489721":{"name":"Site Reliability Engineer (Contract)","id":"108706925846489721","angellistJobUrl":"https://www.pinterestcareers.com/job-form?gh_jid=3887144","title":"Site Reliability Engineer (Contract)","location":"San Francisco, CA, US; ","private":false,"services":[{"type":"id","generated":false,"id":"Tool:108322405266514059","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:107846281190496441","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776004793210","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775501546860","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775271761894","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773669807419","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"}],"company":{"type":"id","generated":false,"id":"Company:101231709530029071","typename":"Company"},"__typename":"Job"},"Tool:108322405266514059":{"id":"108322405266514059","name":"Infra","slug":"infra-hq","title":"Open-source access management for Kubernetes","verified":false,"imageUrl":"https://img.stackshare.io/service/40791/default_a4357de5c49d215b8aed95cbec211f1cf5885911.jpg","canonicalUrl":"/infra-hq","path":"/infra-hq","votes":0,"fans":14,"stacks":10,"following":false,"followContext":null,"__typename":"Tool"},"Tool:107846281190496441":{"id":"107846281190496441","name":"Dream","slug":"dream-framework","title":"Tidy, feature-complete Web framework","verified":false,"imageUrl":"https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png","canonicalUrl":"/dream-framework","path":"/dream-framework","votes":0,"fans":4,"stacks":0,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776004793210":{"id":"101231776004793210","name":"OpenLDAP","slug":"openldap","title":"An open source implementation of the Lightweight Directory Access Protocol","verified":false,"imageUrl":"https://img.stackshare.io/service/5225/zPH8xLZQ_400x400.jpg","canonicalUrl":"/openldap","path":"/openldap","votes":0,"fans":152,"stacks":85,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775501546860":{"id":"101231775501546860","name":"Nix","slug":"nix","title":"A package manager for Linux and other Unix systems ","verified":false,"imageUrl":"https://img.stackshare.io/service/4348/ET9J1uY-_400x400.png","canonicalUrl":"/nix","path":"/nix","votes":0,"fans":133,"stacks":156,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775271761894":{"id":"101231775271761894","name":"FreeIPA","slug":"freeipa","title":"Manage Linux users and client hosts in your realm from one central location with CLI, Web UI or RPC access","verified":false,"imageUrl":"https://img.stackshare.io/service/3931/New_Project__3_.jpg","canonicalUrl":"/freeipa","path":"/freeipa","votes":2,"fans":95,"stacks":38,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773970332063":{"id":"101231773970332063","name":"Terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","verified":true,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","canonicalUrl":"/terraform","path":"/terraform","votes":337,"fans":14130,"stacks":14410,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773837179153":{"id":"101231773837179153","name":"Python","slug":"python","title":"A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.","verified":false,"imageUrl":"https://img.stackshare.io/service/993/pUBY5pVj.png","canonicalUrl":"/python","path":"/python","votes":6656,"fans":189723,"stacks":191329,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773700412232":{"id":"101231773700412232","name":"Ansible","slug":"ansible","title":"Radically simple configuration-management, application deployment, task-execution, and multi-node orchestration engine","verified":true,"imageUrl":"https://img.stackshare.io/service/663/ElOjna20.png","canonicalUrl":"/ansible","path":"/ansible","votes":1309,"fans":16491,"stacks":16612,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773669807419":{"id":"101231773669807419","name":"Docker","slug":"docker","title":"Enterprise Container Platform for High-Velocity Innovation.","verified":true,"imageUrl":"https://img.stackshare.io/service/586/n4u37v9t_400x400.png","canonicalUrl":"/docker","path":"/docker","votes":3825,"fans":136606,"stacks":139622,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773405612798":{"id":"101231773405612798","name":"Amazon EC2","slug":"amazon-ec2","title":"Scalable, pay-as-you-go compute capacity in the cloud","verified":false,"imageUrl":"https://img.stackshare.io/service/18/amazon-ec2.png","canonicalUrl":"/amazon-ec2","path":"/amazon-ec2","votes":2547,"fans":39421,"stacks":44314,"following":false,"followContext":null,"__typename":"Tool"},"Company:101231709530029071":{"imageUrl":"https://img.stackshare.io/company/260/default_c077fc04bb219001b7a1ab10f90ebcdb00c143a9.png","name":"Pinterest","id":"101231709530029071","path":"/companies/pinterest","__typename":"Company"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).jobs({\"first\":8}).edges.1":{"node":{"type":"id","generated":false,"id":"Job:108706925846489721","typename":"Job"},"__typename":"JobEdge"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).jobs({\"first\":8})":{"edges":[{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).jobs({\"first\":8}).edges.0","typename":"JobEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).jobs({\"first\":8}).edges.1","typename":"JobEdge"}],"__typename":"JobConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8})":{"count":3,"pageInfo":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8}).pageInfo","typename":"PageInfo"},"edges":[{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8}).edges.0","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8}).edges.1","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8}).edges.2","typename":"FeaturedPostEdge"}],"__typename":"FeaturedPostConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8}).pageInfo":{"hasNextPage":false,"endCursor":"Mw","__typename":"PageInfo"},"FeaturedPost:107174427714574936":{"id":"107174427714574936","views":1367,"title":"Efficient Resource Management at Pinterest’s Batch Processing Platform","imageUrl":"https://img.stackshare.io/company/260/c077fc04bb219001b7a1ab10f90ebcdb00c143a9.png","publishedAt":"2021-10-27T16:26:25Z","canonicalUrl":"/pinterest/efficient-resource-management-at-pinterests-batch-processing-platform","previewImageUrl":"https://img.stackshare.io/stack/930423/bb05f828e637c0741bf3ed0db0d958740e3b3a10.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:107174427714574936.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773409399220","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773865214260","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776364087566","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231777971452468","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774551560674","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:106456126802764865","typename":"Tool"}],"favoriteStacksCount":5,"__typename":"FeaturedPost"},"$FeaturedPost:107174427714574936.company":{"name":"Pinterest","__typename":"Company"},"Tool:101231773409399220":{"id":"101231773409399220","name":"Amazon S3","slug":"amazon-s3","title":"Store and retrieve any amount of data, at any time, from anywhere on the web","verified":false,"imageUrl":"https://img.stackshare.io/service/25/amazon-s3.png","canonicalUrl":"/amazon-s3","path":"/amazon-s3","votes":2046,"fans":42650,"stacks":47663,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773865214260":{"id":"101231773865214260","name":"Kafka","slug":"kafka","title":"Distributed, fault tolerant, high throughput pub-sub messaging system","verified":false,"imageUrl":"https://img.stackshare.io/service/1063/kazUJooF_400x400.jpg","canonicalUrl":"/kafka","path":"/kafka","votes":596,"fans":22180,"stacks":19683,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231777971452468":{"id":"101231777971452468","name":"PySpark","slug":"pyspark","title":"The Python API for Spark","verified":false,"imageUrl":"https://img.stackshare.io/service/9080/hNHMcixV_400x400.jpg","canonicalUrl":"/pyspark","path":"/pyspark","votes":0,"fans":298,"stacks":204,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774551560674":{"id":"101231774551560674","name":"YARN Hadoop","slug":"yarn-hadoop","title":"Resource management and job scheduling technology ","verified":false,"imageUrl":"https://img.stackshare.io/service/2713/elephant_rgb_sq_400x400.png","canonicalUrl":"/yarn-hadoop","path":"/yarn-hadoop","votes":1,"fans":114,"stacks":109,"following":false,"followContext":null,"__typename":"Tool"},"Tool:106456126802764865":{"id":"106456126802764865","name":"Querybook","slug":"querybook","title":"A Big Data IDE that allows you to discover, create, and share data analyses, queries, and tables (By Pinterest)","verified":false,"imageUrl":"https://img.stackshare.io/service/25752/default_0337bc010f3cb137893fe12aa28b06b75e4121a2.png","canonicalUrl":"/querybook","path":"/querybook","votes":0,"fans":18,"stacks":3,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8}).edges.0":{"node":{"type":"id","generated":false,"id":"FeaturedPost:107174427714574936","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:104484416551667677":{"id":"104484416551667677","views":6222,"title":"Empowering Pinterest Data Scientists and Machine Learning Engineers with PySpark","imageUrl":"https://img.stackshare.io/stack/682727/default_e16a95e7378108826a1b25da04214f1acbc71d2d.png","publishedAt":"2020-07-09T14:41:12Z","canonicalUrl":"/pinterest/empowering-pinterest-data-scientists-and-machine-learning-engineers-with-pyspark","previewImageUrl":"https://img.stackshare.io/stack/682727/8c578dfb07e4da5e17f3bc16f5cb08bdce898827.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:104484416551667677.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774206661614","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773409399220","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776364087566","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775697957346","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774331076628","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775419688564","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774068594470","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774501522052","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774217017036","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231777971452468","typename":"Tool"}],"favoriteStacksCount":5,"__typename":"FeaturedPost"},"$FeaturedPost:104484416551667677.company":{"name":"Pinterest","__typename":"Company"},"Tool:101231774206661614":{"id":"101231774206661614","name":"Kubernetes","slug":"kubernetes","title":"Manage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops","verified":false,"imageUrl":"https://img.stackshare.io/service/1885/21_d3cvM.png","canonicalUrl":"/kubernetes","path":"/kubernetes","votes":639,"fans":51027,"stacks":49724,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775697957346":{"id":"101231775697957346","name":"TensorFlow","slug":"tensorflow","title":"Open Source Software Library for Machine Intelligence","verified":false,"imageUrl":"https://img.stackshare.io/service/4717/FtFnqC38_400x400.png","canonicalUrl":"/tensorflow","path":"/tensorflow","votes":93,"fans":3946,"stacks":3052,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774331076628":{"id":"101231774331076628","name":"Apache Spark","slug":"spark","title":"Fast and general engine for large-scale data processing","verified":false,"imageUrl":"https://img.stackshare.io/service/2220/ca72c4715da998b0bf5d1c857958bed3.png","canonicalUrl":"/spark","path":"/spark","votes":139,"fans":3780,"stacks":2691,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775419688564":{"id":"101231775419688564","name":"Jupyter","slug":"jupyter","title":"Multi-language interactive computing environments.","verified":false,"imageUrl":"https://img.stackshare.io/service/4190/fGBUdNf__400x400.jpg","canonicalUrl":"/jupyter","path":"/jupyter","votes":51,"fans":1635,"stacks":1433,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774068594470":{"id":"101231774068594470","name":"Zookeeper","slug":"zookeeper","title":"Because coordinating distributed systems is a Zoo","verified":false,"imageUrl":"https://img.stackshare.io/service/1528/apache-zookeeper.png","canonicalUrl":"/zookeeper","path":"/zookeeper","votes":42,"fans":1068,"stacks":623,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774501522052":{"id":"101231774501522052","name":"Presto","slug":"presto","title":"Distributed SQL Query Engine for Big Data","verified":true,"imageUrl":"https://img.stackshare.io/service/2606/default_9c42299fc673a12eed0ad20cb7f5c1fd4ef5c80f.png","canonicalUrl":"/presto","path":"/presto","votes":66,"fans":1062,"stacks":377,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774217017036":{"id":"101231774217017036","name":"Apache Hive","slug":"apache-hive","title":"Data Warehouse Software for Reading, Writing, and Managing Large Datasets","verified":false,"imageUrl":"https://img.stackshare.io/service/1911/27eb4217dfd5cb2d579cb56bbcc7b290_400x400.jpeg","canonicalUrl":"/apache-hive","path":"/apache-hive","votes":0,"fans":561,"stacks":407,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8}).edges.1":{"node":{"type":"id","generated":false,"id":"FeaturedPost:104484416551667677","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231816776527215":{"id":"101231816776527215","views":12553,"title":"How Stream Built a Modern RSS Reader With JavaScript","imageUrl":"https://img.stackshare.io/stack/324567/default_6173bfb55612718a9834547806d0275503812d65.png","publishedAt":"2018-06-19T03:02:34Z","canonicalUrl":"/stream/how-stream-built-a-modern-rss-reader-with-javascript","previewImageUrl":"https://img.stackshare.io/stack/324567/67158d60bd5e62c7a575d3906bef5bf1012d7c97.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:101231816776527215.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773849098825","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854388643","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775376642511","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854768982","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773409399220","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775357043443","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773403188549","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776364087566","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774565594919","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774519122717","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773501596063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774492574471","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774678060123","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773772085321","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773951552081","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773623413723","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773671105654","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776176987604","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776297440807","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774337384939","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773860768398","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773813299908","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774327775574","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231778007196699","typename":"Tool"}],"favoriteStacksCount":14,"__typename":"FeaturedPost"},"$FeaturedPost:101231816776527215.company":{"name":"Stream","__typename":"Company"},"Tool:101231773410696721":{"id":"101231773410696721","name":"GitHub","slug":"github","title":"Powerful collaboration, review, and code management for open source and private development projects","verified":true,"imageUrl":"https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg","canonicalUrl":"/github","path":"/github","votes":10238,"fans":236547,"stacks":238763,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773845103618":{"id":"101231773845103618","name":"Node.js","slug":"nodejs","title":"A platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications","verified":false,"imageUrl":"https://img.stackshare.io/service/1011/n1JRsFeB_400x400.png","canonicalUrl":"/nodejs","path":"/nodejs","votes":8511,"fans":155041,"stacks":154475,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773849098825":{"id":"101231773849098825","name":"React","slug":"react","title":"A JavaScript library for building user interfaces","verified":false,"imageUrl":"https://img.stackshare.io/service/1020/OYIaJ1KK.png","canonicalUrl":"/react","path":"/react","votes":3950,"fans":136419,"stacks":140609,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773854388643":{"id":"101231773854388643","name":"MongoDB","slug":"mongodb","title":"The database for giant ideas","verified":true,"imageUrl":"https://img.stackshare.io/service/1030/leaf-360x360.png","canonicalUrl":"/mongodb","path":"/mongodb","votes":4130,"fans":80410,"stacks":79244,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775376642511":{"id":"101231775376642511","name":"ES6","slug":"es6","title":"The next version of JavaScript","verified":false,"imageUrl":"https://img.stackshare.io/service/4109/16407404782_8b9c57eab3.jpg","canonicalUrl":"/es6","path":"/es6","votes":164,"fans":61118,"stacks":62030,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773854768982":{"id":"101231773854768982","name":"Redis","slug":"redis","title":"Open source (BSD licensed), in-memory data structure store","verified":false,"imageUrl":"https://img.stackshare.io/service/1031/default_cbce472cd134adc6688572f999e9122b9657d4ba.png","canonicalUrl":"/redis","path":"/redis","votes":3866,"fans":47857,"stacks":51055,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775357043443":{"id":"101231775357043443","name":"Redux","slug":"reduxjs","title":"Predictable state container for JavaScript apps","verified":false,"imageUrl":"https://img.stackshare.io/service/4074/13142323.png","canonicalUrl":"/reduxjs","path":"/reduxjs","votes":661,"fans":24624,"stacks":25786,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773920953695":{"id":"101231773920953695","name":"ExpressJS","slug":"expressjs","title":"Sinatra inspired web development framework for node.js -- insanely fast, flexible, and simple","verified":false,"imageUrl":"https://img.stackshare.io/service/1163/hashtag.png","canonicalUrl":"/expressjs","path":"/expressjs","votes":1591,"fans":24742,"stacks":24481,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773403188549":{"id":"101231773403188549","name":"Amazon CloudFront","slug":"amazon-cloudfront","title":"Content delivery with low latency and high data transfer speeds","verified":false,"imageUrl":"https://img.stackshare.io/service/13/amazon-cloudfront.png","canonicalUrl":"/amazon-cloudfront","path":"/amazon-cloudfront","votes":935,"fans":12089,"stacks":19713,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774565594919":{"id":"101231774565594919","name":"Babel","slug":"babel","title":"Use next generation JavaScript, today.","verified":true,"imageUrl":"https://img.stackshare.io/service/2739/-1wfGjNw.png","canonicalUrl":"/babel","path":"/babel","votes":390,"fans":12771,"stacks":14601,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774519122717":{"id":"101231774519122717","name":"Grafana","slug":"grafana","title":"Open source Graphite & InfluxDB Dashboard and Graph Editor","verified":false,"imageUrl":"https://img.stackshare.io/service/2645/default_8f9d552b144493679449b16c79647da5787e808b.jpg","canonicalUrl":"/grafana","path":"/grafana","votes":412,"fans":14282,"stacks":14463,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773501596063":{"id":"101231773501596063","name":"Sentry","slug":"sentry","title":"See performance issues, fix errors faster, and optimize code health. ","verified":true,"imageUrl":"https://img.stackshare.io/service/191/lzoDXqf-.png","canonicalUrl":"/sentry","path":"/sentry","votes":859,"fans":10347,"stacks":12251,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774492574471":{"id":"101231774492574471","name":"AWS Elastic Load Balancing (ELB)","slug":"aws-elastic-load-balancing","title":"Automatically distribute your incoming application traffic across multiple Amazon EC2 instances","verified":false,"imageUrl":"https://img.stackshare.io/service/2587/aws-elastic-load-balancing.png","canonicalUrl":"/aws-elastic-load-balancing","path":"/aws-elastic-load-balancing","votes":59,"fans":9623,"stacks":10930,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774678060123":{"id":"101231774678060123","name":"Electron","slug":"electron","title":"Build cross platform desktop apps with JavaScript, HTML, and CSS","verified":false,"imageUrl":"https://img.stackshare.io/service/2946/default_18a71b65e69d7aef5f218ae07f64eb6e1594c444.jpg","canonicalUrl":"/electron","path":"/electron","votes":140,"fans":10651,"stacks":9498,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773772085321":{"id":"101231773772085321","name":"Mocha","slug":"mocha","title":"Simple, flexible, fun javascript test framework for node.js & the browser","verified":false,"imageUrl":"https://img.stackshare.io/service/832/mocha.png","canonicalUrl":"/mocha","path":"/mocha","votes":430,"fans":3430,"stacks":3333,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773951552081":{"id":"101231773951552081","name":"Mongoose","slug":"mongoose","title":"MongoDB object modeling designed to work in an asynchronous environment","verified":false,"imageUrl":"https://img.stackshare.io/service/1231/0TXzZU7W_400x400.jpg","canonicalUrl":"/mongoose","path":"/mongoose","votes":56,"fans":1722,"stacks":1581,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773623413723":{"id":"101231773623413723","name":"AWS CloudFormation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","verified":false,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","canonicalUrl":"/aws-cloudformation","path":"/aws-cloudformation","votes":89,"fans":1619,"stacks":1485,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773671105654":{"id":"101231773671105654","name":"Algolia","slug":"algolia","title":"Developer-friendly API and complete set of tools for building search","verified":true,"imageUrl":"https://img.stackshare.io/service/589/iEEMVN5L_400x400.jpg","canonicalUrl":"/algolia","path":"/algolia","votes":695,"fans":1351,"stacks":1096,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776176987604":{"id":"101231776176987604","name":"Create React App","slug":"create-react-app","title":"Create React apps with no build configuration","verified":true,"imageUrl":"https://img.stackshare.io/service/5537/oi64YzXY.jpg","canonicalUrl":"/create-react-app","path":"/create-react-app","votes":4,"fans":1246,"stacks":1005,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776297440807":{"id":"101231776297440807","name":"MongoDB Atlas","slug":"mongodb-atlas","title":"Deploy and scale a MongoDB cluster in the cloud with just a few clicks","verified":true,"imageUrl":"https://img.stackshare.io/service/5739/atlas-360x360.png","canonicalUrl":"/mongodb-atlas","path":"/mongodb-atlas","votes":32,"fans":1035,"stacks":745,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774337384939":{"id":"101231774337384939","name":"PM2","slug":"pm2","title":"Ease-to-use Node.js process manager, like forever","verified":true,"imageUrl":"https://img.stackshare.io/service/2237/757747.png","canonicalUrl":"/pm2","path":"/pm2","votes":23,"fans":472,"stacks":401,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773860768398":{"id":"101231773860768398","name":"Graphite","slug":"graphite","title":"A highly scalable real-time graphing system","verified":false,"imageUrl":"https://img.stackshare.io/service/1050/graphite.png","canonicalUrl":"/graphite","path":"/graphite","votes":42,"fans":498,"stacks":381,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773813299908":{"id":"101231773813299908","name":"StatsD","slug":"statsd","title":"Simple daemon for easy stats aggregation","verified":false,"imageUrl":"https://img.stackshare.io/service/932/default_b8c7d49298132d46fbef113905bcba1896158113.png","canonicalUrl":"/statsd","path":"/statsd","votes":31,"fans":340,"stacks":257,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774327775574":{"id":"101231774327775574","name":"Stream","slug":"stream","title":"Build scalable feeds, activity streams & chat in a few hours instead of months.","verified":true,"imageUrl":"https://img.stackshare.io/service/2213/mBSAJI_h_400x400.jpg","canonicalUrl":"/stream","path":"/stream","votes":54,"fans":262,"stacks":171,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231778007196699":{"id":"101231778007196699","name":"Bull","slug":"bull","title":"Premium Queue package for handling jobs and messages in NodeJS","verified":false,"imageUrl":"https://img.stackshare.io/service/9146/bull-logo.png","canonicalUrl":"/bull","path":"/bull","votes":4,"fans":128,"stacks":55,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"pnpm-vs-yarn\"}).featuredPosts({\"first\":8}).edges.2":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231816776527215","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"}}</script> <!-- glamorIds: 170 --> <script type="application/json" id="Stackup-glamor-67029e5a-60d7-4563-88ab-a88bbba67d37">["1htug8r","1yodi52","iepywa","x5hg3h","u0iaox","9ilv8v","ii8qy4","1ag7ge9","ld8qhm","11b98zt","yawzxl","1aswmtz","qrny8b","1176rj6","zkwjas","i52n91","13sfqhu","4d5oui","10pc7td","1ukyolz","1uackhz","1ofkegx","1xexurq","81jah4","69zjs9","8a04gk","1m38k02","162qu2y","p797gu","1drwozb","gbti5j","1ahj942","1an0suy","14pk3xx","1o4togz","1i8b05s","uw1ldh","4gnhqq","xkasvz","atv6j6","1m8tyev","1vf0ygt","utnqcw","ds0hbm","dg4ww9","z9ms26","6uh2e7","1pwtf47","t68yd0","1rz3855","i6njnm","1dp4k20","ztg526","1srb7t4","f7loz8","pvufaf","r1wkvc","1vusbpb","1jka35","26la4","1njwzsr","1xq3kt1","3vlw85","1anvsjr","169quga","msbgqg","avtieu","omocl","pn8ojz","jaw8ve","19hrebc","5k0ecd","86zjul","1di6wpo","lr10t7","4yzqpf","st9eg3","x7ngfe","ihgrxl","124gz8p","1i4hfqi","2urik6","1cuq2n9","1cl6o07","172fe00","1i2jin4","1f94cd7","f8hv9w","1v4wqws","uxqild","7c9av6","6nrkpz","1mlbi0l","1cda8k4","2an9kq","5x5cr6","rsz8c","16s8o6z","p8n7zj","1uq0dwx","1p6gwer","acfjt6","w707sh","1ke07jm","4pt7vy","mta8ak","13fg6qi","4lwqz5","ptavxb","1cqgl9p","p223ph","cn7d1w","1fj3l7d","i272tr","56ijgy","1l7t0dr","14bxxd1","1hlwa6q","f9zb2m","1wdjt5z","8sc56q","1d2ae58","1olkybm","138fyst","1xjq47k","1enuxn2","1v2ezdc","n6mbbq","oa3yz4","1g9kten","1j2w1cg","1b2ktnx","gyrv08","n746ki","i5u9v5","1ewdw7x","ih8ay1","17niv7d","6mpj06","nio1yx","ak2nbp","9yycaw","leu1cr","156fhm0","12alag6","10hy8cb","fa6ece","vbfwyr","1gtwocl","1kcdhc3","cuzej8","12h9n7t","m2gwm","14kdfdp","lscypq","maw68b","yzfa9h","1pz1q9u","1rla8dl","1cm2u5n","lhxxg6","jyena0","s6ccv3","103289b","lnzci0","odgfgk","184qcyh","1cc4z0m","1wm5vej","5j62os"]</script> <style>@-webkit-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-moz-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-o-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-webkit-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-moz-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-o-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-webkit-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-moz-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-o-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-webkit-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-moz-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-o-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-webkit-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-moz-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-o-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-webkit-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-moz-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-o-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}.css-ii8qy4,[data-css-ii8qy4]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;width:1140px;height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1ag7ge9,[data-css-1ag7ge9]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-wrap:wrap;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;}@media only screen and (max-width: 812px){.css-1ag7ge9 > a,[data-css-1ag7ge9] > a{text-align:center;}}.css-ld8qhm,[data-css-ld8qhm]{text-decoration:none;cursor:pointer;color:#c2c2c2;}.css-ld8qhm:hover,[data-css-ld8qhm]:hover{color:#068dfe;}.css-11b98zt,[data-css-11b98zt]{color:#c2c2c2;margin:0 5px 0 5px;}.css-11b98zt::after,[data-css-11b98zt]::after{content:"/";}.css-yawzxl,[data-css-yawzxl]{width:1140px;}.css-1aswmtz,[data-css-1aswmtz]{height:95px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:-webkit-sticky; position: sticky;top:0;background-color:#fff;width:100%;z-index:100;}.css-qrny8b,[data-css-qrny8b]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:space-between;width:100%;margin:0 auto;-webkit-box-pack:justify;-webkit-justify-content:space-between;}.css-1176rj6,[data-css-1176rj6]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;margin:15px 0 0 0;}.css-1176rj6 > a:last-of-type,[data-css-1176rj6] > a:last-of-type{margin-right:0;}.css-zkwjas,[data-css-zkwjas]{margin-top:4px;font-size:14px;}.css-zkwjas>span,[data-css-zkwjas]>span{margin-left:0;}.css-i52n91,[data-css-i52n91]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;margin:0;}.css-13sfqhu,[data-css-13sfqhu]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.69;letter-spacing:normal;-webkit-font-smoothing:antialiased;margin-top:8px;color:#707070;}.css-4d5oui,[data-css-4d5oui]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-4d5oui strong,[data-css-4d5oui] strong{color:#333;}@media only screen and (max-width: 480px){.css-4d5oui,[data-css-4d5oui]{padding:10px;}}.css-10pc7td,[data-css-10pc7td]{display:grid;grid-template-columns:150px auto;grid-row-gap:20px;margin-bottom:20px;margin-top:20px;-ms-grid-template-columns:150px auto;-ms-grid-row-gap:20px;}@media only screen and (max-width: 480px){.css-10pc7td,[data-css-10pc7td]{grid-template-columns:100px auto;-ms-grid-template-columns:100px auto;}}.css-1ukyolz,[data-css-1ukyolz]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:row;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:22px;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}.css-1uackhz,[data-css-1uackhz]{font-weight:600;}.css-1ofkegx,[data-css-1ofkegx]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:22px;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;padding-left:10px;}.css-1xexurq,[data-css-1xexurq]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;text-decoration:none;color:#068dfe;margin-top:10px;}.css-81jah4,[data-css-81jah4]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;margin:50px 0;-webkit-box-pack:center;-webkit-justify-content:center;}.css-69zjs9,[data-css-69zjs9]{background:#f7f7f7;width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;padding-top:68px;padding-bottom:68px;-webkit-box-pack:center;-webkit-justify-content:center;}@media only screen and (max-width: 812px){.css-69zjs9,[data-css-69zjs9]{padding-top:30px;padding-bottom:50px;}}.css-8a04gk,[data-css-8a04gk]{width:1140px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:space-between;padding-left:20px;padding-right:20px;-webkit-box-pack:justify;-webkit-justify-content:space-between;}@media only screen and (max-width: 812px){.css-8a04gk,[data-css-8a04gk]{flex-direction:column;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;}}.css-1m38k02,[data-css-1m38k02]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}@media only screen and (max-width: 812px){.css-1m38k02,[data-css-1m38k02]{text-align:center;}}.css-162qu2y,[data-css-162qu2y]{font-size:20px;font-weight:600;letter-spacing:0.4px;}.css-p797gu,[data-css-p797gu]{font-size:13px;line-height:2.07;letter-spacing:0.3px;text-decoration:none;color:#333;}.css-p797gu:hover,[data-css-p797gu]:hover{color:#068dfe;}@media only screen and (max-width: 768px){.css-p797gu,[data-css-p797gu]{font-size:14px;}}.css-1drwozb,[data-css-1drwozb]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;width:80%;justify-content:space-between;align-items:center;order:4;-webkit-box-pack:justify;-webkit-justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-webkit-order:4;}@media only screen and (max-width: 480px){.css-1drwozb,[data-css-1drwozb]{margin-bottom:20px;}}.css-gbti5j,[data-css-gbti5j]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;position:relative;color:#707070;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;}.css-gbti5j>:first-child,[data-css-gbti5j]>:first-child{margin-bottom:5px;}.css-gbti5j>span,[data-css-gbti5j]>span{color:#333;line-height:1.22;letter-spacing:0.8px;font-weight:600;font-size:18px;}.css-1ahj942,[data-css-1ahj942]{border-left:1px solid #e1e1e1;width:1px;height:36px;}.css-1an0suy,[data-css-1an0suy]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;position:relative;color:#707070;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;transition:color 0.6s ease-in-out;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-transition:color 0.6s ease-in-out;-moz-transition:color 0.6s ease-in-out;}.css-1an0suy>:first-child,[data-css-1an0suy]>:first-child{margin-bottom:5px;}.css-1an0suy>span,[data-css-1an0suy]>span{color:#333;line-height:1.22;letter-spacing:0.8px;font-weight:600;font-size:18px;}.css-1an0suy div,[data-css-1an0suy] div{position:absolute;top:-15px;right:0;left:0;text-align:center;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#45C57C;opacity:0;animation:none;-webkit-animation:none;}.css-14pk3xx,[data-css-14pk3xx]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:8px;padding-right:8px;width:98px;outline:none;flex-grow:0;flex-shrink:0;margin-right:10px;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-grow:0;-webkit-flex-shrink:0;}.css-14pk3xx:hover,[data-css-14pk3xx]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}.css-1o4togz,[data-css-1o4togz]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:auto;outline:none;flex-grow:0;flex-shrink:0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-grow:0;-webkit-flex-shrink:0;}.css-1o4togz:hover,[data-css-1o4togz]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}.css-1i8b05s,[data-css-1i8b05s]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;margin-top:20px;-webkit-box-pack:center;-webkit-justify-content:center;}.css-uw1ldh,[data-css-uw1ldh]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:0.2px;-webkit-font-smoothing:antialiased;border-bottom:1px solid;border-color:#e1e1e1;padding:10px 0 20px 0;width:100%;}.css-4gnhqq,[data-css-4gnhqq]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:space-between;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;}.css-xkasvz,[data-css-xkasvz]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;padding:20px 0;width:100%;}.css-atv6j6,[data-css-atv6j6]{margin-top:5px;}.css-1m8tyev,[data-css-1m8tyev]{position:relative;}.css-1m8tyev a,[data-css-1m8tyev] a{display:inline-block;}.css-1m8tyev img,[data-css-1m8tyev] img{width:31px;height:31px;border-radius:50%;}.css-1m8tyev> svg,[data-css-1m8tyev]> svg{width:31px;height:31px;}.css-1vf0ygt,[data-css-1vf0ygt]{margin-left:15px;width:100%;}.css-1vf0ygt a,[data-css-1vf0ygt] a{color:#333;}.css-1vf0ygt a:hover,[data-css-1vf0ygt] a:hover{color:#068dfe;}.css-utnqcw,[data-css-utnqcw]{font-weight:bold;font-size:14px;width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:space-between;-webkit-box-pack:justify;-webkit-justify-content:space-between;}.css-ds0hbm,[data-css-ds0hbm]{color:#4a4a4a;}.css-dg4ww9,[data-css-dg4ww9]{width:100%;margin-top:0;margin-bottom:18px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;flex-wrap:wrap;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;}.css-dg4ww9 > svg:first-of-type,[data-css-dg4ww9] > svg:first-of-type{margin-right:7px;}.css-dg4ww9 > a,[data-css-dg4ww9] > a{text-decoration:none;margin-right:7px;}.css-dg4ww9 > a:last-of-type,[data-css-dg4ww9] > a:last-of-type{text-decoration:none;margin-right:0;}.css-dg4ww9 > *,[data-css-dg4ww9] > *{margin-bottom:13px;}.css-dg4ww9 > a > span:last-of-type,[data-css-dg4ww9] > a > span:last-of-type{font-size:14px;}.css-z9ms26,[data-css-z9ms26]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#2d2d2d;margin-right:7px;}.css-6uh2e7,[data-css-6uh2e7]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#939393;margin-right:7px;}.css-1pwtf47,[data-css-1pwtf47]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:row;align-items:center;text-decoration:none;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;}.css-t68yd0,[data-css-t68yd0]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:relative;justify-content:center;align-items:center;width:22px;min-width:22px;height:22px;min-height:22px;background-color:#fff;border-radius:3.1px;border:0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-t68yd0:hover,[data-css-t68yd0]:hover{background-color:#fff;}.css-1rz3855,[data-css-1rz3855]{border:solid 1px #c2c2c2;border-radius:3.1px;height:22px;width:22px;}.css-i6njnm,[data-css-i6njnm]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;margin-left:7px;color:#000;}.css-1dp4k20,[data-css-1dp4k20]{height:75px;position:relative;overflow:hidden;}.css-1dp4k20:after,[data-css-1dp4k20]:after{content:" ";position:absolute;bottom:0;left:0;width:100%;height:30px;background:-webkit-linear-gradient(to bottom, rgba(255,255,255,0), #fff 80%); background: -moz-linear-gradient(to bottom, rgba(255,255,255,0), #fff 80%); background: linear-gradient(to bottom, rgba(255,255,255,0), #fff 80%);}.css-ztg526 .topic,[data-css-ztg526] .topic,.css-ztg526 .tool,[data-css-ztg526] .tool{font-weight:normal;background:rgba(6,141,254,0.15);padding:0px 2px;}.css-ztg526 a,[data-css-ztg526] a,.css-ztg526 a:visited,[data-css-ztg526] a:visited{color:#068dfe;text-decoration:underline;cursor:pointer;}.css-ztg526 a:hover,[data-css-ztg526] a:hover,.css-ztg526 a:visited:hover,[data-css-ztg526] a:visited:hover{text-decoration:underline;}.css-ztg526 pre,[data-css-ztg526] pre{white-space:pre-wrap;word-wrap:break-word;background:#fafafa;color:#333;margin:15px 0;font-family:monospace;padding:10px;border-radius:0;}.css-ztg526 code,[data-css-ztg526] code{border-radius:0;background:#fafafa;color:#333;}.css-1srb7t4,[data-css-1srb7t4]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.6666666666666667;letter-spacing:normal;-webkit-font-smoothing:antialiased;width:100%;text-align:center;text-decoration:underline;cursor:pointer;color:#333;}.css-1srb7t4:hover,[data-css-1srb7t4]:hover{color:#333;text-decoration:none;}.css-f7loz8,[data-css-f7loz8]{display:grid;grid-template-columns:repeat(auto-fill, minmax(350px, auto));row-gap:20px;column-gap:20px;margin-top:20px;-ms-grid-template-columns:repeat(auto-fill, minmax(350px, auto));-webkit-column-gap:20px;-moz-column-gap:20px;}@media only screen and (max-width: 768px){.css-f7loz8,[data-css-f7loz8]{grid-template-columns:minmax(250px, auto);justify-items:center;-ms-grid-template-columns:minmax(250px, auto);}}.css-pvufaf,[data-css-pvufaf]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#068dfe;text-decoration:none;cursor:pointer;}.css-r1wkvc,[data-css-r1wkvc]{width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1vusbpb,[data-css-1vusbpb]{width:1140px;padding-top:10px;}.css-1jka35,[data-css-1jka35]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:34px;line-height:1.2;letter-spacing:normal;-webkit-font-smoothing:antialiased;padding:0;margin:0;color:#333;margin-top:15px;margin-bottom:15px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;flex-wrap:wrap;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;}.css-1jka35>span.vs,[data-css-1jka35]>span.vs{font-size:17px;color:#b2b2b2;font-weight:normal;margin-right:6px;margin-left:6px;}@media only screen and (max-width: 812px){.css-1jka35,[data-css-1jka35]{font-size:20px;}.css-1jka35>span.vs,[data-css-1jka35]>span.vs{font-size:14px;margin-right:9px;margin-left:9px;}}.css-26la4,[data-css-26la4]{width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;border-bottom:2px solid #e1e1e1;position:-webkit-sticky; position: sticky;z-index:100;top:0;-webkit-box-pack:center;-webkit-justify-content:center;}.css-1njwzsr,[data-css-1njwzsr]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;text-decoration:none;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;flex-direction:column;margin-right:10px;margin-left:10px;margin-bottom:-2px;border-bottom:2px solid transparent;width:100px;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1njwzsr > svg,[data-css-1njwzsr] > svg{height:34px;}.css-1njwzsr:hover,[data-css-1njwzsr]:hover{color:#068dfe;border-color:#068dfe;}.css-1njwzsr:hover svg path,[data-css-1njwzsr]:hover svg path{fill:#068dfe;stroke:#068dfe;}.css-1njwzsr:focus,[data-css-1njwzsr]:focus{color:#068dfe;border-color:#068dfe;}.css-1njwzsr:focus svg path,[data-css-1njwzsr]:focus svg path{fill:#068dfe;stroke:#068dfe;}.css-1xq3kt1,[data-css-1xq3kt1]{margin-top:-72px;position:-webkit-sticky; position: sticky;top:90px;width:100%;box-shadow:0 2px 4px 0 rgba(194, 194, 194, 0.5);background:#fff;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;height:72px;transition:opacity 300ms ease;opacity:0;pointer-events:none;z-index:100;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-webkit-transition:opacity 300ms ease;-moz-transition:opacity 300ms ease;}.css-1xq3kt1>div,[data-css-1xq3kt1]>div{width:1140px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;}.css-1xq3kt1>div>div,[data-css-1xq3kt1]>div>div{width:860px;display:grid;grid-template-columns:286.6666666666667px 286.6666666666667px 286.6666666666667px;-ms-grid-template-columns:286.6666666666667px 286.6666666666667px 286.6666666666667px;}.css-3vlw85,[data-css-3vlw85]{position:relative;flex-direction:column;grid-column:auto;grid-row:auto;background:white;padding:30px 20px 30px 20px;border-right:1px solid #e1e1e1;border-bottom:1px solid #e1e1e1;top:0;z-index:inherit;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-grid-column:auto;-ms-grid-row:auto;}@media only screen and (max-width: 812px){.css-3vlw85,[data-css-3vlw85]{padding:20px 10px 20px 10px;}}.css-1anvsjr,[data-css-1anvsjr]{background:white;border-radius:2px;width:auto;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;position:relative;height:100%;justify-content:flex-start;padding-top:0;padding-bottom:0;border:0;box-shadow:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:start;-webkit-justify-content:flex-start;}.css-1anvsjr>button,[data-css-1anvsjr]>button{top:16.5px;right:14px;}@media only screen and (max-width: 812px){.css-1anvsjr>button,[data-css-1anvsjr]>button{right:0;}}.css-169quga,[data-css-169quga]{border-radius:2px;width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:relative;border:1px solid #e1e1e1;padding:6px;box-sizing:border-box;padding-right:36px;}@media only screen and (max-width: 812px){.css-169quga,[data-css-169quga]{border:0;}.css-169quga > div,[data-css-169quga] > div{display:none;}}.css-msbgqg,[data-css-msbgqg]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;text-decoration:none;margin-bottom:0;flex-grow:0;order:0;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-grow:0;-webkit-order:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}.css-avtieu,[data-css-avtieu]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:16px;line-height:1.38;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;text-decoration:none;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-avtieu>span:nth-child(2),[data-css-avtieu]>span:nth-child(2){font-size:13px;color:#ababab;font-weight:400;}@media only screen and (max-width: 812px){.css-avtieu>span:nth-child(1),[data-css-avtieu]>span:nth-child(1){font-size:14px;}.css-avtieu>span:nth-child(2),[data-css-avtieu]>span:nth-child(2){font-size:13px;}}.css-omocl,[data-css-omocl]{margin-left:auto;}.css-pn8ojz,[data-css-pn8ojz]{padding:0;outline:none;border:0;width:20px;height:20px;border-radius:50%;background:#dbdbdb;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;position:absolute;cursor:pointer;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-pn8ojz>svg,[data-css-pn8ojz]>svg{width:8px;height:8px;}.css-jaw8ve,[data-css-jaw8ve]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:relative;margin-bottom:50px;margin-top:25px;}.css-19hrebc,[data-css-19hrebc]{display:grid;width:860px;grid-template-columns:286.6666666666667px 286.6666666666667px 286.6666666666667px;flex-grow:1;-ms-grid-template-columns:286.6666666666667px 286.6666666666667px 286.6666666666667px;-webkit-flex-grow:1;}.css-5k0ecd,[data-css-5k0ecd]{position:relative;flex-direction:column;grid-column:span 3;grid-row:auto;background:white;padding:30px 20px 30px 20px;border-right:0;border-bottom:1px solid #e1e1e1;top:0;z-index:inherit;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-grid-column:span 3;-ms-grid-row:auto;}@media only screen and (max-width: 812px){.css-5k0ecd,[data-css-5k0ecd]{padding:20px 10px 20px 10px;}}.css-86zjul,[data-css-86zjul]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;max-width:1170px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:space-between;cursor:pointer;padding:10px 20px;border:1px solid #e1e1e1;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}@media only screen and (max-width: 480px){.css-86zjul,[data-css-86zjul]{padding:10px;flex-wrap:wrap;margin:0;justify-content:center;border:0;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;-webkit-box-pack:center;-webkit-justify-content:center;}}.css-1di6wpo,[data-css-1di6wpo]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;-webkit-box-align:center;-webkit-align-items:center;}@media only screen and (max-width: 480px){.css-1di6wpo,[data-css-1di6wpo]{width:auto;}}.css-lr10t7,[data-css-lr10t7]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:15px;line-height:1.4545454545454546;letter-spacing:normal;-webkit-font-smoothing:antialiased;padding:0;margin:0;color:#333;}.css-4yzqpf,[data-css-4yzqpf]{color:#068dfe;display:block;font-size:12px;font-weight:normal;}.css-st9eg3,[data-css-st9eg3]{height:34px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:270px;outline:none;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-st9eg3:hover,[data-css-st9eg3]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}@media only screen and (max-width: 480px){.css-st9eg3,[data-css-st9eg3]{margin-top:10px;}}.css-x7ngfe,[data-css-x7ngfe]{background:white;border-radius:2px;width:auto;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;position:relative;height:100%;justify-content:flex-end;padding-top:27px;padding-bottom:30px;border:1px solid #e1e1e1;box-shadow:0 1px 0 0 #e1e1e1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:end;-webkit-justify-content:flex-end;}.css-x7ngfe>button,[data-css-x7ngfe]>button{top:10px;right:10px;}@media only screen and (max-width: 812px){.css-x7ngfe>button,[data-css-x7ngfe]>button{right:0;}}.css-ihgrxl,[data-css-ihgrxl]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;text-decoration:none;margin-bottom:24px;flex-grow:1;order:1;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-grow:1;-webkit-order:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-124gz8p,[data-css-124gz8p]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;order:2;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-order:2;}.css-1i4hfqi,[data-css-1i4hfqi]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:row;align-items:center;justify-content:space-around;flex-wrap:wrap;margin-top:15px;margin-bottom:32px;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-around;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;}.css-1i4hfqi > button:first-of-type,[data-css-1i4hfqi] > button:first-of-type{margin-right:15px;}.css-2urik6,[data-css-2urik6]{border:0;border-bottom:1px solid #e1e1e1;height:1px;width:90%;margin-top:-10px;margin-bottom:17px;order:3;-webkit-order:3;}.css-1cuq2n9,[data-css-1cuq2n9]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;padding:19px;border:0;margin-top:0;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}.css-1cl6o07,[data-css-1cl6o07]{width:125px;height:auto;margin-right:25px;}.css-172fe00,[data-css-172fe00]{font-size:15px;text-align:left;color:#000;font-weight:900;padding-top:0;max-width:425px;}@media only screen and (max-width: 812px){.css-172fe00,[data-css-172fe00]{max-width:280px;}}.css-1i2jin4,[data-css-1i2jin4]{height:auto;display:inline;justify-content:center;align-items:center;border-radius:2px;border:1px solid #fff;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:15px;font-weight:900;letter-spacing:0;background-color:transparent;color:#068dfe;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:-webkit-fit-content; width: -moz-fit-content; width: fit-content;outline:none;text-align:center;padding:0;margin:0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-1i2jin4:hover,[data-css-1i2jin4]:hover{background-color:rgba(6,141,254,0.8);border-color:#fff;color:#068dfe;background:transparent;cursor:pointer;text-decoration:underline;}.css-1f94cd7,[data-css-1f94cd7]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:auto;outline:none;margin:10px 0 5px;margin-left:auto;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-1f94cd7:hover,[data-css-1f94cd7]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}@media only screen and (max-width: 480px){.css-1f94cd7,[data-css-1f94cd7]{width:100px;}}.css-f8hv9w,[data-css-f8hv9w]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;}@media only screen and (max-width: 812px){.css-f8hv9w,[data-css-f8hv9w]{font-size:15px;}}.css-1v4wqws,[data-css-1v4wqws]{display:block;flex-direction:none;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:none;}.css-uxqild,[data-css-uxqild]{position:relative;overflow-y:scroll;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-grow:1;height:270px;max-height:auto;flex-direction:column;flex-wrap:nowrap;-webkit-flex-grow:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-lines:nowrap;-webkit-flex-wrap:nowrap;}.css-uxqild::-webkit-scrollbar,[data-css-uxqild]::-webkit-scrollbar{width:4px;}.css-uxqild::-webkit-scrollbar-thumb,[data-css-uxqild]::-webkit-scrollbar-thumb{background:#c2c2c2;border-radius:2.5px;}.css-uxqild > div,[data-css-uxqild] > div{flex-basis:unset;-webkit-flex-basis:unset;}@media only screen and (max-width: 480px){.css-uxqild > div,[data-css-uxqild] > div{flex-basis:unset;-webkit-flex-basis:unset;}}.css-7c9av6,[data-css-7c9av6]{margin:0;padding:0;}.css-6nrkpz,[data-css-6nrkpz]{list-style:none;}.css-1mlbi0l,[data-css-1mlbi0l]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin-bottom:15px;flex-shrink:0;cursor:default;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-shrink:0;}.css-1mlbi0l > div:first-of-type,[data-css-1mlbi0l] > div:first-of-type{width:40px;flex-shrink:0;-webkit-flex-shrink:0;}.css-1cda8k4,[data-css-1cda8k4]{display:inline-block;border-radius:2px;cursor:pointer;background-color:#fff;border:1px solid #c2c2c2;color:#4a4a4a;}.css-2an9kq,[data-css-2an9kq]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;justify-content:center;align-items:center;padding-top:5px;padding-left:8px;padding-right:8px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-5x5cr6,[data-css-5x5cr6]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:12px;font-weight:600;line-height:1.83;letter-spacing:0.5px;}.css-rsz8c,[data-css-rsz8c]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;margin-left:10px;text-decoration:none;color:#000;}.css-16s8o6z,[data-css-16s8o6z]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;height:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:center;fontsize:14px;color:#c2c2c2;font-style:italic;text-align:center;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;}.css-p8n7zj,[data-css-p8n7zj]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;max-width:1170px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}@media only screen and (max-width: 480px){.css-p8n7zj,[data-css-p8n7zj]{padding:10px;flex-wrap:wrap;width:100vw;margin:0;justify-content:center;border:0;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;-webkit-box-pack:center;-webkit-justify-content:center;}}.css-1uq0dwx,[data-css-1uq0dwx]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;}@media only screen and (max-width: 480px){.css-1uq0dwx,[data-css-1uq0dwx]{width:auto;}}.css-1p6gwer,[data-css-1p6gwer]{margin-right:40px;width:40px;height:40px;flex-shrink:0;-webkit-flex-shrink:0;}.css-acfjt6,[data-css-acfjt6]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:center;height:100%;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;}.css-acfjt6 > div > div,[data-css-acfjt6] > div > div{margin-left:45px;}@media only screen and (max-width: 480px){.css-acfjt6,[data-css-acfjt6]{padding:10px;}.css-acfjt6 > div > div,[data-css-acfjt6] > div > div{margin-left:25px;}}.css-w707sh,[data-css-w707sh]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;padding:20px;flex-direction:row;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}.css-w707sh > div:first-of-type,[data-css-w707sh] > div:first-of-type{margin-left:0;}.css-1ke07jm,[data-css-1ke07jm]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;max-width:1170px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:space-between;cursor:pointer;padding:0px;border:none;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}@media only screen and (max-width: 480px){.css-1ke07jm,[data-css-1ke07jm]{padding:10px;flex-wrap:wrap;margin:0;justify-content:center;border:0;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;-webkit-box-pack:center;-webkit-justify-content:center;}}.css-4pt7vy,[data-css-4pt7vy]{position:relative;overflow-y:hidden;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-grow:1;height:270px;max-height:auto;flex-direction:column;flex-wrap:nowrap;-webkit-flex-grow:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-lines:nowrap;-webkit-flex-wrap:nowrap;}.css-4pt7vy::-webkit-scrollbar,[data-css-4pt7vy]::-webkit-scrollbar{width:4px;}.css-4pt7vy::-webkit-scrollbar-thumb,[data-css-4pt7vy]::-webkit-scrollbar-thumb{background:#c2c2c2;border-radius:2.5px;}.css-4pt7vy::after,[data-css-4pt7vy]::after{content:"";position:absolute;bottom:0;left:0;height:100px;width:100%;background:-webkit-linear-gradient(top, rgba(255,255,255,.3), rgba(255,255,255, 1)); background: -moz-linear-gradient(top, rgba(255,255,255,.3), rgba(255,255,255, 1)); background: linear-gradient(top, rgba(255,255,255,.3), rgba(255,255,255, 1));}.css-4pt7vy > div,[data-css-4pt7vy] > div{flex-basis:unset;-webkit-flex-basis:unset;}@media only screen and (max-width: 480px){.css-4pt7vy > div,[data-css-4pt7vy] > div{flex-basis:unset;-webkit-flex-basis:unset;}}.css-mta8ak,[data-css-mta8ak]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin-bottom:15px;flex-shrink:0;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-shrink:0;}.css-13fg6qi,[data-css-13fg6qi]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:relative;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;min-height:32px;background-color:#fff;border-radius:3.1px;border:solid 0.8px #c2c2c2;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-13fg6qi:hover,[data-css-13fg6qi]:hover{background-color:#fff;}.css-4lwqz5,[data-css-4lwqz5]{border:0;border-radius:0;height:24px;width:24px;}.css-ptavxb,[data-css-ptavxb]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;}.css-1cqgl9p,[data-css-1cqgl9p]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;}.css-p223ph,[data-css-p223ph]{width:260px;margin-left:20px;}.css-cn7d1w,[data-css-cn7d1w]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;padding:19px;border:1px solid #e9e9e9;margin-top:33px;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1fj3l7d,[data-css-1fj3l7d]{width:152px;height:auto;margin-right:0;}.css-i272tr,[data-css-i272tr]{font-size:15px;text-align:center;color:#000;font-weight:900;padding-top:15px;max-width:auto;}@media only screen and (max-width: 812px){.css-i272tr,[data-css-i272tr]{max-width:280px;}}.css-56ijgy,[data-css-56ijgy]{height:auto;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #fff;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:900;letter-spacing:0;background-color:transparent;color:#068dfe;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:auto;outline:none;text-align:center;padding:0;margin:10px 0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-56ijgy:hover,[data-css-56ijgy]:hover{background-color:rgba(6,141,254,0.8);border-color:#fff;color:#068dfe;background:transparent;cursor:pointer;text-decoration:underline;}.css-1l7t0dr,[data-css-1l7t0dr]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:100%;outline:none;margin:10px 0 5px;margin-left:0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-1l7t0dr:hover,[data-css-1l7t0dr]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}@media only screen and (max-width: 480px){.css-1l7t0dr,[data-css-1l7t0dr]{width:100px;}}.css-14bxxd1,[data-css-14bxxd1]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:center;height:100%;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;}@media only screen and (max-width: 768px){.css-14bxxd1,[data-css-14bxxd1]{padding:10px;}}.css-1hlwa6q,[data-css-1hlwa6q]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;flex-direction:row;text-decoration:none;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}@media only screen and (max-width: 768px){.css-1hlwa6q,[data-css-1hlwa6q]{flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}}.css-f9zb2m,[data-css-f9zb2m]{height:50px;width:50px;}@media only screen and (max-width: 768px){.css-f9zb2m,[data-css-f9zb2m]{height:32px;width:32px;}}.css-1wdjt5z,[data-css-1wdjt5z]{margin-left:15px;}.css-1wdjt5z > div > div,[data-css-1wdjt5z] > div > div{margin-right:20px;}@media only screen and (max-width: 768px){.css-1wdjt5z,[data-css-1wdjt5z]{margin-top:15px;}.css-1wdjt5z > div > div,[data-css-1wdjt5z] > div > div{margin-right:25px;}}.css-8sc56q,[data-css-8sc56q]{width:20px;height:20px;}.css-8sc56q path,[data-css-8sc56q] path{fill:#939393;}.css-1d2ae58,[data-css-1d2ae58]{font-weight:400;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:12px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;border-radius:6px;height:18px;padding-left:5px;padding-right:5px;margin-left:6px;flex-grow:0;background:#FF7F17;color:#fff;-webkit-flex-grow:0;}.css-1olkybm,[data-css-1olkybm]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;width:100%;height:100%;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-138fyst,[data-css-138fyst]{height:34px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:120px;outline:none;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-138fyst:hover,[data-css-138fyst]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}.css-1xjq47k,[data-css-1xjq47k]{cursor:pointer;display:-webkit-inline-box; display: -moz-inline-box; display: -ms-inline-flexbox; display: -webkit-inline-flex; display: inline-flex;align-items:center;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1enuxn2,[data-css-1enuxn2]{border-radius:50%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:center;cursor:pointer;height:62px;width:62px;background-color:#068dfe;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;}.css-1v2ezdc,[data-css-1v2ezdc]{height:29px;width:29px;}.css-n6mbbq,[data-css-n6mbbq]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:12px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#068dfe;margin-top:10px;}.css-oa3yz4 > div:last-of-type,[data-css-oa3yz4] > div:last-of-type{border-bottom:0;}.css-1g9kten,[data-css-1g9kten]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;}@media only screen and (max-width: 480px){.css-1g9kten,[data-css-1g9kten]{padding:10px;border-bottom:none;}}.css-1j2w1cg,[data-css-1j2w1cg]{cursor:pointer;text-decoration:none;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin-right:0;-webkit-box-align:center;-webkit-align-items:center;}.css-1j2w1cg > div:last-of-type,[data-css-1j2w1cg] > div:last-of-type{margin-right:0;}.css-1b2ktnx,[data-css-1b2ktnx]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#2d2d2d;margin-right:7px;margin-left:7px;}.css-gyrv08,[data-css-gyrv08]{display:none;}.css-n746ki,[data-css-n746ki]{margin-top:30px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;z-index:1;-webkit-box-pack:center;-webkit-justify-content:center;}.css-i5u9v5,[data-css-i5u9v5]{margin:20px 0;display:grid;gap:15px;grid-template:repeat(1, 1fr) / repeat(2, 1fr);-ms-grid-template:repeat(1, 1fr) / repeat(2, 1fr);}@media only screen and (max-width: 480px){.css-i5u9v5,[data-css-i5u9v5]{grid-template:repeat(1, 1fr) / repeat(1, 1fr);gap:15px 0;padding:0 15px;-ms-grid-template:repeat(1, 1fr) / repeat(1, 1fr);}}.css-1ewdw7x,[data-css-1ewdw7x]{background:#fff;position:relative;border:1px solid #e1e1e1;border-radius:4px;margin:10px 0 3px 0;padding:15px 20px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;justify-content:flex-end;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-pack:end;-webkit-justify-content:flex-end;}.css-ih8ay1,[data-css-ih8ay1]{order:1;flex-grow:1;-webkit-order:1;-webkit-flex-grow:1;}.css-17niv7d,[data-css-17niv7d]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:15px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;margin-bottom:8px;margin:5px 0 0 0;}.css-17niv7d a,[data-css-17niv7d] a, .css-17niv7d a:hover, [data-css-17niv7d] a:hover, .css-17niv7d a:visited, [data-css-17niv7d] a:visited{color:#333;text-decoration:none;}@media only screen and (max-width: 480px){.css-17niv7d,[data-css-17niv7d]{font-size:18px;}}.css-6mpj06,[data-css-6mpj06]{color:#707070;}.css-6mpj06:hover,[data-css-6mpj06]:hover{color:#707070;text-decoration:underline;}.css-nio1yx,[data-css-nio1yx]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin:5px 0;-webkit-box-align:center;-webkit-align-items:center;}.css-nio1yx>svg,[data-css-nio1yx]>svg{margin-right:3px;}@media only screen and (max-width: 480px){.css-nio1yx,[data-css-nio1yx]{font-size:13px;}}.css-ak2nbp,[data-css-ak2nbp]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;}.css-ak2nbp a,[data-css-ak2nbp] a, .css-ak2nbp a:hover, [data-css-ak2nbp] a:hover, .css-ak2nbp a:visited, [data-css-ak2nbp] a:visited{color:#707070;text-decoration:none;}.css-9yycaw,[data-css-9yycaw]{order:2;margin:10px 0;-webkit-order:2;}.css-leu1cr,[data-css-leu1cr]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-leu1cr:hover,[data-css-leu1cr]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}.css-156fhm0,[data-css-156fhm0]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;margin:15px 0 0 0;align-items:center;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}.css-12alag6,[data-css-12alag6]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;-webkit-box-align:center;-webkit-align-items:center;}.css-10hy8cb,[data-css-10hy8cb]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin-right:4px;-webkit-box-align:center;-webkit-align-items:center;}.css-10hy8cb a,[data-css-10hy8cb] a{margin-right:8px;}.css-fa6ece,[data-css-fa6ece]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin:0;position:inherit;-webkit-box-align:center;-webkit-align-items:center;}.css-fa6ece h3,[data-css-fa6ece] h3{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:18px;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;}.css-fa6ece>div,[data-css-fa6ece]>div{margin-left:12px;}.css-vbfwyr,[data-css-vbfwyr]{display:grid;margin-bottom:26px;grid-template-columns:1fr 1fr;grid-column-gap:20px;grid-row-gap:20px;margin-top:21px;-ms-grid-template-columns:1fr 1fr;-ms-grid-column-gap:20px;-ms-grid-row-gap:20px;}@media only screen and (max-width: 480px){.css-vbfwyr,[data-css-vbfwyr]{grid-template-columns:1fr;-ms-grid-template-columns:1fr;}}.css-1gtwocl,[data-css-1gtwocl]{position:relative;box-sizing:border-box;padding:24px;border:1px solid #e1e1e1;border-radius:4px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;background:#fff;padding-top:24px;height:272px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}@media only screen and (max-width: 1199px){.css-1gtwocl,[data-css-1gtwocl]{height:288px;}}.css-1kcdhc3,[data-css-1kcdhc3]{max-height:500px;flex:1;overflow-y:hidden;-webkit-flex:1;}@media only screen and (max-width: 1199px){.css-1kcdhc3,[data-css-1kcdhc3]{max-height:280px;}}.css-cuzej8,[data-css-cuzej8]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:15px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;margin-bottom:8px;}.css-cuzej8 a,[data-css-cuzej8] a, .css-cuzej8 a:hover, [data-css-cuzej8] a:hover, .css-cuzej8 a:visited, [data-css-cuzej8] a:visited{color:#333;text-decoration:none;}.css-12h9n7t,[data-css-12h9n7t]{font-size:19px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;-webkit-box-align:center;-webkit-align-items:center;}.css-12h9n7t a,[data-css-12h9n7t] a{min-height:64px;}.css-m2gwm,[data-css-m2gwm]{font-size:11px;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;letter-spacing:0.3px;color:#a1a1a1;}.css-14kdfdp,[data-css-14kdfdp]{margin:10px 0 10px 0;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;font-size:11px;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;letter-spacing:0.3px;-webkit-box-align:center;-webkit-align-items:center;}.css-14kdfdp p,[data-css-14kdfdp] p{margin:0;font-weight:600;}.css-lscypq,[data-css-lscypq]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;padding-top:16px;align-items:center;justify-content:space-between;border-top:1px solid #e1e1e1;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}.css-maw68b,[data-css-maw68b]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-maw68b .views,[data-css-maw68b] .views,.css-maw68b .favourites,[data-css-maw68b] .favourites{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;margin-right:16px;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-maw68b .views svg,[data-css-maw68b] .views svg,.css-maw68b .favourites svg,[data-css-maw68b] .favourites svg{margin-right:6px;}@media only screen and (max-width: 480px){.css-maw68b .views,[data-css-maw68b] .views,.css-maw68b .favourites,[data-css-maw68b] .favourites{margin-right:6px;}}@media only screen and (max-width: 480px){.css-yzfa9h,[data-css-yzfa9h]{padding:0 10px;}}.css-1pz1q9u,[data-css-1pz1q9u]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;background-color:#fff;border-top:1px solid #e1e1e1;padding:10px;padding-top:26px;padding-bottom:30px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1pz1q9u > div > article ,[data-css-1pz1q9u] > div > article {width:100%;flex-grow:1;margin-bottom:20px;margin-right:0;border:1px solid #e1e1e1;border-bottom:0;box-shadow:0 2px 6px 0 rgba(227, 227, 227, 0.5);-webkit-flex-grow:1;}.css-1pz1q9u > div:last-of-type > article,[data-css-1pz1q9u] > div:last-of-type > article{margin-bottom:0;}@media only screen and (max-width: 480px){.css-1pz1q9u,[data-css-1pz1q9u]{padding:8px;}.css-1pz1q9u > div,[data-css-1pz1q9u] > div{width:100%;}}.css-1rla8dl,[data-css-1rla8dl]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:14px;line-height:1.7;letter-spacing:0.23px;-webkit-font-smoothing:antialiased;color:#333;margin-left:14px;margin-bottom:10px;}.css-1rla8dl > span,[data-css-1rla8dl] > span{font-weight:400;}.css-1cm2u5n,[data-css-1cm2u5n]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;margin-left:7px;margin-right:14px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;}@media only screen and (max-width: 480px){.css-1cm2u5n,[data-css-1cm2u5n]{margin-left:0;margin-right:5px;}}.css-lhxxg6,[data-css-lhxxg6]{width:3px;height:38px;background-color:#e1e1e1;}.css-jyena0,[data-css-jyena0]{height:11px;width:11px;background-color:#c2c2c2;border:2px solid #fff;box-sizing:content-box;border-radius:50%;}.css-s6ccv3,[data-css-s6ccv3]{width:3px;background-color:#e1e1e1;flex-grow:1;-webkit-flex-grow:1;}.css-103289b,[data-css-103289b]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#939393;margin-right:3px;margin-left:0;}.css-lnzci0,[data-css-lnzci0]{width:22px;height:22px;border-radius:3.1px;border:1px solid #c2c2c2;}.css-odgfgk,[data-css-odgfgk]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#939393;margin-right:0;margin-left:3px;}.css-184qcyh,[data-css-184qcyh]{border:solid 1px #e5e5e5;border-radius:4px;width:38px;height:38px;margin-right:11px;margin-bottom:0;background-image:url(https://img.stackshare.io/service/5848/44mC-kJ3.jpg);background-repeat:none;background-size:contain;}.css-1cc4z0m,[data-css-1cc4z0m]{border:solid 1px #e5e5e5;border-radius:4px;width:84px;height:84px;margin-right:0;margin-bottom:5px;background-image:url(https://img.stackshare.io/service/5848/44mC-kJ3.jpg);background-repeat:none;background-size:contain;}.css-1wm5vej,[data-css-1wm5vej]{border:solid 1px #e5e5e5;border-radius:4px;width:38px;height:38px;margin-right:11px;margin-bottom:0;background-image:url(https://img.stackshare.io/service/10903/JLVo_YPe_400x400.jpg);background-repeat:none;background-size:contain;}.css-5j62os,[data-css-5j62os]{border:solid 1px #e5e5e5;border-radius:4px;width:84px;height:84px;margin-right:0;margin-bottom:5px;background-image:url(https://img.stackshare.io/service/10903/JLVo_YPe_400x400.jpg);background-repeat:none;background-size:contain;}</style> <div id="Stackup-react-component-67029e5a-60d7-4563-88ab-a88bbba67d37" data-ssr="true" ><div class="css-r1wkvc"><div class="css-1vusbpb"><div class="css-4gnhqq"><div data-testid="breadcrumbs" class="css-1ag7ge9"><a href="/categories" class="css-ld8qhm">Home</a><div class="css-11b98zt"></div><a href="/devops" class="css-ld8qhm">DevOps</a><div class="css-11b98zt"></div><a href="/build-test-deploy" class="css-ld8qhm">Build, Test, Deploy</a><div class="css-11b98zt"></div><a href="/package-managers" class="css-ld8qhm">Package Managers</a></div></div><h1 class="css-1jka35"><span data-testid="stackupTitle">pnpm</span><span class="vs"> vs </span><span data-testid="stackupTitle">Yarn</span></h1></div><div class="css-26la4"><div class="css-yawzxl"><div data-testid="navigationBar" class="css-1aswmtz"><div class="css-qrny8b"><nav class="css-1176rj6"><a href="#decisions" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34 34"><g fill="#999" stroke="#999" stroke-width=".2"><path fill-rule="evenodd" d="M21.47 23.475V22.34h-2.46a.537.537 0 0 0-.528.531v2.124l-3.14.008v-5.641a.537.537 0 0 0-.527-.533h-3.287l.03 1.163L8.84 17.22l2.689-2.78v1.167h2.88l.543.014c1.743.068 3.207 1.39 3.482 3.142l.079.356h2.957l-.03-1.197 2.718 2.776-2.688 2.778zm-7.463-11.307l2.765-3.313.075-.004 2.693 3.318h-.585c-.602 0-.602.527-.602.78v3.49c-.773-1.02-1.793-1.587-3.06-1.688v-1.865c0-.205.002-.4-.159-.56-.156-.157-.357-.157-.443-.157h-.684zm10.754 7.942l-2.72-2.78a.834.834 0 0 0-.908-.18.832.832 0 0 0-.506.77v.355h-1.43c-.007-.028-.02-.054-.026-.083a.43.43 0 0 0 .025-.144v-5.035h.685c.45 0 .617-.258.67-.37.051-.11.14-.407-.148-.75l-2.905-3.58a.907.907 0 0 0-1.374.001l-2.983 3.575c-.29.35-.2.645-.148.756.052.11.222.368.67.368h.787v1.75h-2.08v-.323a.83.83 0 0 0-.506-.77.828.828 0 0 0-.908.182l-2.72 2.778a.847.847 0 0 0 .001 1.176l2.716 2.772a.82.82 0 0 0 .91.189.836.836 0 0 0 .509-.772v-.324H14.5v5.331c0 .461.37.836.827.836h3.17a.832.832 0 0 0 .827-.836v-1.82h1.302v.293c0 .336.197.638.503.771a.833.833 0 0 0 .912-.181l2.719-2.778a.844.844 0 0 0 0-1.177z"></path></g></svg><div class="css-zkwjas">Decisions<!-- --> </div></a><a href="#pros" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path fill="#A1A1A1" stroke="#A1A1A1" stroke-width=".2" d="M23.42 15.403c.855-.864.59-2.612-.892-2.612l-3.903.002c.148-.837.363-2.226.354-2.357-.082-1.242-.863-2.754-.896-2.815-.143-.27-.862-.634-1.586-.478-.935.203-1.03.808-1.027.975 0 0 .04 1.655.044 2.097-.447.996-1.99 3.613-2.457 3.815a.706.706 0 0 0-.37-.105H7.755A.76.76 0 0 0 7 14.69v6.908a.72.72 0 0 0 .71.665h4.43a.718.718 0 0 0 .711-.722v-.23s.165-.012.24.037c.285.183.636.414 1.095.414h6.61c2.47 0 2.205-2.224 1.98-2.527.417-.46.675-1.273.323-1.915.27-.29.746-1.09.32-1.917zM11.986 21.54H7.71v-6.894h4.278v6.894zm10.28-6.196l-.041.17c1.138.329.532 1.659-.284 1.745l-.04.17c1.091.282.57 1.652-.285 1.745l-.04.17c.891.149.675 1.691-.675 1.691l-6.722.003c-.475 0-.907-.549-1.257-.549h-.304v-5.306c.38-.239.846-.549 1.106-.772.49-.424 2.497-3.71 2.497-4.122 0-.412-.045-2.191-.045-2.191s.394-.514 1.272-.14c0 0 .74 1.406.815 2.526 0 0-.333 2.307-.512 3.03h4.66c1.146.002.927 1.659-.146 1.83z"></path></svg><div class="css-zkwjas">Pros &amp; Cons<!-- --> </div></a><a href="#stats" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g fill="none" fill-rule="evenodd" stroke="#A1A1A1"><path fill="#A1A1A1" fill-rule="nonzero" stroke-width=".3" d="M20.876 7.374a.352.352 0 0 0-.105-.27.361.361 0 0 0-.273-.103L20.481 7h-2.177c-.2 0-.36.16-.36.355 0 .196.16.356.36.356h1.344l-3.558 3.512-1.341-1.325a.362.362 0 0 0-.51 0L7.77 16.285a.352.352 0 0 0 0 .502.361.361 0 0 0 .51 0l6.214-6.135 1.342 1.324c.14.139.368.139.509 0l3.812-3.763v1.201c0 .196.161.355.36.355.199 0 .36-.159.36-.355V7.391l-.001-.017z"></path><path d="M21.952 22.761v-8a1 1 0 0 0-1-1h-1.214a1 1 0 0 0-1 1v8m-2.143 0v-4.357a1 1 0 0 0-1-1h-1.214a1 1 0 0 0-1 1v4.357m-2.143 0v-2.214a1 1 0 0 0-1-1H9.024a1 1 0 0 0-1 1v2.214"></path></g></svg><div class="css-zkwjas">Stats<!-- --> </div></a><a href="#description" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g fill="#A1A1A1" stroke="#A1A1A1" stroke-width=".2"><path d="M20.35 23H8.95a.933.933 0 0 1-.95-.95V6.95c0-.538.412-.95.95-.95h8.677L21.3 9.673V22.05c0 .538-.412.95-.95.95zm.317-13.073l-2.85-2.85v2.09c0 .19.126.316.316.316h2.534v.634h-2.534a.933.933 0 0 1-.95-.95V6.633H8.95c-.19 0-.317.127-.317.317v15.1c0 .19.127.317.317.317h11.4c.19 0 .317-.127.317-.317V9.927z"></path><path d="M11.87 18.45h5.23a.5.5 0 1 1 0 1h-5.23a.5.5 0 1 1 0-1zm5.43-2.305v-3.66l-2.7-1.35-2.7 1.35v3.66l2.7 1.35 2.7-1.35zm-2.7-2.34l-.75-.45 1.8-1.02.75.36-1.8 1.11zm.39-1.8l-1.71.99-.48-.3 1.8-.9.39.21zm-2.49 1.2l1.8 1.11v1.74h.6v-1.74l1.8-1.11v2.58l-2.1 1.05-2.1-1.05v-2.58z"></path></g></svg><div class="css-zkwjas">Description<!-- --> </div></a><a href="#jobs" class="css-1njwzsr"><svg class="css-8sc56q" id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g><path class="st0" d="M.7 16.8h28.6v1.8H.7v-1.8zm27.7.9l-.9.9v-1.8l.9.9z"></path><path class="st0" d="M4.6 6.1h20.7c2.2 0 3.9 1.8 3.9 3.9v13.6c0 2.2-1.8 3.9-3.9 3.9H4.6c-2.2 0-3.9-1.8-3.9-3.9V10c0-2.2 1.8-3.9 3.9-3.9zm0 1.8c-1.2 0-2.1 1-2.1 2.1v13.6c0 1.2 1 2.1 2.1 2.1h20.7c1.2 0 2.1-1 2.1-2.1V10c0-1.2-1-2.1-2.1-2.1H4.6z"></path><path class="st0" d="M10.5 16.8v4.3c0 1.1.9 2 2 2h5c1.1 0 2-.9 2-2v-4.3h-1.8v4.3c0 .1-.1.2-.2.2h-5c-.1 0-.2-.1-.2-.2v-4.3h-1.8zM8.8 7V4.5c0-1.1.9-2 2-2h8.6c1.1 0 2 .9 2 2V7h-1.8V4.5c0-.1-.1-.2-.2-.2h-8.6c-.1 0-.2.1-.2.2V7H8.8z"></path></g></svg><div class="css-zkwjas">Jobs<!-- --> <span class="css-1d2ae58">2</span></div></a><a href="#alternatives" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g fill="#A1A1A1" stroke="#A1A1A1" stroke-width=".2"><path d="M13.626 18.015l.511-.81a.405.405 0 0 0-.136-.565.422.422 0 0 0-.576.133l-.51.81c-.927 1.469-2.25 2.312-3.632 2.312H7.416a.412.412 0 1 0 0 .823h1.87c1.68-.007 3.26-.99 4.34-2.703zm9.944-7.882l-2.023-1.99a.42.42 0 0 0-.59 0 .403.403 0 0 0 0 .578l1.316 1.291h-1.939c-1.676 0-3.26.984-4.34 2.697l-.314.498a.405.405 0 0 0 .137.566.42.42 0 0 0 .572-.134l.313-.499c.927-1.468 2.249-2.308 3.632-2.308h1.936l-1.315 1.291a.403.403 0 0 0 0 .579c.082.08.188.12.297.12a.42.42 0 0 0 .296-.12l2.027-1.99a.406.406 0 0 0-.003-.58zm-.862.34v-.04l.02.02-.02.02z"></path><path d="M20.954 22.581c.082.08.188.12.297.12a.42.42 0 0 0 .296-.12l2.027-1.99a.403.403 0 0 0 0-.58l-2.027-1.986a.42.42 0 0 0-.59 0 .403.403 0 0 0 0 .578l1.316 1.292h-1.877c-1.38 0-2.706-.843-3.632-2.312L13.69 12.71c-1.08-1.716-2.664-2.697-4.34-2.697H7.416a.412.412 0 1 0 0 .823h1.931c1.38 0 2.705.843 3.632 2.309l3.073 4.874c1.08 1.716 2.664 2.7 4.34 2.7h1.877l-1.315 1.291a.4.4 0 0 0 0 .572zm1.754-2.265l.02.02-.02.02v-.04z"></path></g></svg><div class="css-zkwjas">Alternatives<!-- --> </div></a><a href="#integrations" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g fill="#A1A1A1" stroke="#A1A1A1"><path stroke-width=".4" d="M19.474 8.03a6.42 6.42 0 0 0-4.478 1.827 6.42 6.42 0 0 0-4.478-1.827C6.924 8.03 4 11.018 4 14.691c0 3.673 2.924 6.661 6.518 6.661a6.42 6.42 0 0 0 4.478-1.827 6.419 6.419 0 0 0 4.477 1.827c3.594 0 6.518-2.988 6.518-6.66 0-3.674-2.924-6.662-6.517-6.662zm-8.956 12.724c-3.272 0-5.933-2.72-5.933-6.063 0-3.343 2.662-6.063 5.933-6.063 1.575 0 3.005.635 4.068 1.663a6.717 6.717 0 0 0-1.63 4.4c0 1.686.616 3.227 1.63 4.401a5.84 5.84 0 0 1-4.068 1.662zm3.023-6.063a6.11 6.11 0 0 1 1.455-3.965 6.11 6.11 0 0 1 1.454 3.965 6.11 6.11 0 0 1-1.454 3.965 6.108 6.108 0 0 1-1.455-3.965zm5.933 6.063a5.838 5.838 0 0 1-4.07-1.662 6.718 6.718 0 0 0 1.632-4.401 6.717 6.717 0 0 0-1.631-4.4 5.838 5.838 0 0 1 4.069-1.663c3.27 0 5.932 2.72 5.932 6.063 0 3.342-2.661 6.063-5.932 6.063z"></path><path stroke-width=".2" d="M15.384 11.887h-.866v-.299h.866zm-.786 5.608h.865v.299h-.865zm1.384-4.548h-1.903v-.3h1.903zm.183.959h-2.421v-.299h2.421zm.085.685v.299h-2.509v-.299zm-2.384.978h2.258v.299h-2.258zm.213.954h1.72v.299h-1.72v-.299z"></path></g></svg><div class="css-zkwjas">Integrations<!-- --> </div></a><a href="#posts" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="#A1A1A1" stroke="#999" stroke-width=".2" d="M13.093.906a3.087 3.087 0 0 0-4.37 0L.711 8.916a.4.4 0 0 0-.113.23l-.594 4.398a.4.4 0 0 0 .113.337c.075.074.18.119.284.119.018 0 .035 0 .053-.003l2.65-.358a.403.403 0 0 0-.108-.8l-2.124.287.415-3.067 3.227 3.228a.395.395 0 0 0 .567 0l8.012-8.01A3.07 3.07 0 0 0 14 3.09a3.06 3.06 0 0 0-.907-2.184zm-4.215.985l1.346 1.345-7.312 7.312-1.345-1.345L8.878 1.89zM4.801 12.434l-1.316-1.316 7.311-7.312 1.316 1.316L4.8 12.434zm7.872-7.888l-3.219-3.22a2.278 2.278 0 0 1 1.456-.52 2.28 2.28 0 0 1 2.285 2.285c0 .54-.185 1.047-.522 1.456z"></path></svg><div class="css-zkwjas">Blog Posts<!-- --> </div></a></nav><div class="css-nil"></div></div></div></div></div><div class="css-1xq3kt1"><div><div><div style="border:0;padding:0 10px 0 10px" class="css-3vlw85"><div class="css-1anvsjr"><div class="css-169quga"><a href="/pnpm" class="css-msbgqg"><div class="css-1wm5vej"></div><div class="css-avtieu"><span>pnpm</span><span>92<!-- --> Stacks</span></div></a><div class="css-omocl"></div></div><button data-testid="removeTool" class="css-pn8ojz"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><g fill="#FFF" fill-rule="evenodd" stroke="#FFF" stroke-width=".6"><rect width="15.543" height="1.137" x="-1.805" y="5.439" rx=".569" transform="rotate(45 5.967 6.105)"></rect><rect width="15.543" height="1.137" x="-1.805" y="5.3" rx=".569" transform="rotate(135 5.967 5.967)"></rect></g></svg></button></div></div><div style="border:0;padding:0 10px 0 10px" class="css-3vlw85"><div class="css-1anvsjr"><div class="css-169quga"><a href="/yarn" class="css-msbgqg"><div class="css-184qcyh"></div><div class="css-avtieu"><span>Yarn</span><span>15.9K<!-- --> Stacks</span></div></a><div class="css-omocl"></div></div><button data-testid="removeTool" class="css-pn8ojz"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><g fill="#FFF" fill-rule="evenodd" stroke="#FFF" stroke-width=".6"><rect width="15.543" height="1.137" x="-1.805" y="5.439" rx=".569" transform="rotate(45 5.967 6.105)"></rect><rect width="15.543" height="1.137" x="-1.805" y="5.3" rx=".569" transform="rotate(135 5.967 5.967)"></rect></g></svg></button></div></div><div style="border:0;padding:0 10px 0 10px" class="css-3vlw85"><div class="css-1olkybm"><button class="css-138fyst">Get Advice</button></div></div></div></div></div><main class="css-ii8qy4"><div class="css-jaw8ve"><div class="css-19hrebc"><div style="border:0;padding:0 10px 0 10px" class="css-5k0ecd"><div style="margin-bottom:15px"><div data-testid="getAdvice" class="css-86zjul"><div class="css-1di6wpo"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><h1 class="css-lr10t7">Need advice about which tool to choose?<span class="css-4yzqpf">Ask the StackShare community!</span></h1></div><button class="css-st9eg3">Get Advice</button></div></div></div><div style="border:0;padding:0 10px 0 10px;margin-bottom:15px" class="css-3vlw85"><div class="css-x7ngfe"><a href="/pnpm" class="css-ihgrxl"><div class="css-5j62os"></div><div>pnpm</div></a><div class="css-124gz8p"><div class="css-1i4hfqi"><button data-testid="follow" class="css-14pk3xx"><svg width="11" height="11" viewBox="0 0 11 11" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="1.5"><path d="M5.5 0v11M0 5.5h11" fill="none" stroke="#fff"></path></svg> <!-- -->Follow</button><button data-testid="iUseThis" class="css-1o4togz"><svg width="11" height="11" viewBox="0 0 11 11" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="1.5"><path d="M5.5 0v11M0 5.5h11" fill="none" stroke="#fff"></path></svg> I use this</button></div></div><hr class="css-2urik6"/><div class="css-1drwozb"><div class="css-gbti5j"><label>Stacks</label><span>92</span></div><div class="css-1ahj942"></div><div class="css-1an0suy"><label>Followers</label><span>42</span><div>+ 1</div></div><div class="css-1ahj942"></div><div class="css-gbti5j"><label>Votes</label><span>5</span></div></div><button data-testid="removeTool" class="css-pn8ojz"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><g fill="#FFF" fill-rule="evenodd" stroke="#FFF" stroke-width=".6"><rect width="15.543" height="1.137" x="-1.805" y="5.439" rx=".569" transform="rotate(45 5.967 6.105)"></rect><rect width="15.543" height="1.137" x="-1.805" y="5.3" rx=".569" transform="rotate(135 5.967 5.967)"></rect></g></svg></button></div></div><div style="border:0;padding:0 10px 0 10px;margin-bottom:15px" class="css-3vlw85"><div class="css-x7ngfe"><a href="/yarn" class="css-ihgrxl"><div class="css-1cc4z0m"></div><div>Yarn</div></a><div class="css-124gz8p"><div class="css-1i4hfqi"><button data-testid="follow" class="css-14pk3xx"><svg width="11" height="11" viewBox="0 0 11 11" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="1.5"><path d="M5.5 0v11M0 5.5h11" fill="none" stroke="#fff"></path></svg> <!-- -->Follow</button><button data-testid="iUseThis" class="css-1o4togz"><svg width="11" height="11" viewBox="0 0 11 11" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="1.5"><path d="M5.5 0v11M0 5.5h11" fill="none" stroke="#fff"></path></svg> I use this</button></div></div><hr class="css-2urik6"/><div class="css-1drwozb"><div class="css-gbti5j"><label>Stacks</label><span>15.9K</span></div><div class="css-1ahj942"></div><div class="css-1an0suy"><label>Followers</label><span>11.4K</span><div>+ 1</div></div><div class="css-1ahj942"></div><div class="css-gbti5j"><label>Votes</label><span>143</span></div></div><button data-testid="removeTool" class="css-pn8ojz"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><g fill="#FFF" fill-rule="evenodd" stroke="#FFF" stroke-width=".6"><rect width="15.543" height="1.137" x="-1.805" y="5.439" rx=".569" transform="rotate(45 5.967 6.105)"></rect><rect width="15.543" height="1.137" x="-1.805" y="5.3" rx=".569" transform="rotate(135 5.967 5.967)"></rect></g></svg></button></div></div><div style="border:0;padding:0 10px 0 10px;margin-bottom:15px" class="css-3vlw85"><div class="css-1olkybm"><div data-testid="addTool" class="css-1xjq47k"><div class="css-1enuxn2"><svg class="css-1v2ezdc" xmlns="http://www.w3.org/2000/svg" width="29" height="29" viewBox="0 0 29 29"><path fill="#FFF" d="M27.426 12.477H16.523V1.574C16.523 1.077 15.85 0 14.5 0c-1.349 0-2.023 1.077-2.023 1.574v10.903H1.574C1.077 12.477 0 13.15 0 14.5c0 1.349 1.077 2.023 1.574 2.023h10.903v10.903c0 .497.674 1.574 2.023 1.574 1.349 0 2.023-1.077 2.023-1.574V16.523h10.903c.497 0 1.574-.674 1.574-2.023 0-1.349-1.077-2.023-1.574-2.023z"></path></svg></div><div class="css-n6mbbq">Add tool</div></div></div></div><div id="decisions" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div style="border-bottom:none;padding-bottom:0" class="css-5k0ecd"><div class="css-oa3yz4"><div class="css-1g9kten">Advice on pnpm and Yarn</div><div class="css-yzfa9h"><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">StackShare Editors</div><div class="css-ds0hbm"><a href="/stackbot/decisions/102623239805976070" class="css-nil"><time>Apr 23, 2019</time> | 7 upvotes · 200.2K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none"><path fill="#FF7E3F" d="M20.918 19.017l-1.442-4.195a10.3 10.3 0 0 0 1.062-4.537 10.208 10.208 0 0 0-2.949-7.207A10.199 10.199 0 0 0 10.436 0a10.23 10.23 0 0 0-7.428 3.006A10.228 10.228 0 0 0 0 10.437a10.199 10.199 0 0 0 3.077 7.153 10.207 10.207 0 0 0 7.191 2.95h.016a10.3 10.3 0 0 0 4.537-1.063l4.195 1.442a1.485 1.485 0 0 0 1.543-.357c.408-.408.545-.999.358-1.544z"></path><path fill="#FFF" stroke="#FFF" stroke-width=".55" d="M10.168 14.702c.35 0 .595 0 .623.622.028.623-.297.623-.623.623-.349 0-.607-.285-.622-.623-.015-.336.297-.622.622-.622zm0-9.465a3.1 3.1 0 0 1 3.097 3.097 3.103 3.103 0 0 1-2.474 3.034v1.543a.623.623 0 1 1-1.245 0V10.81c0-.344.278-.623.622-.623 1.021 0 1.852-.83 1.852-1.852 0-1.021-.83-1.852-1.852-1.852-1.021 0-1.852.83-1.852 1.852a.623.623 0 0 1-1.245 0 3.1 3.1 0 0 1 3.097-3.097z"></path></g></svg><div class="css-z9ms26">Needs advice</div><div class="css-6uh2e7">on</div><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a><div class="css-6uh2e7"> and </div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>From a StackShare Community member: “I’m a freelance web developer (I mostly use <span class="tool">Node.js</span>) and for future projects I’m debating between <span class="tool">npm</span> or <span class="tool">Yarn</span> as my default package manager. I’m a minimalist so I hate installing software if I don’t need to- in this case that would be Yarn. For those who made the switch from npm to Yarn, what benefits have you noticed? For those who stuck with npm, are you happy you with it?"</p></div></div></div><a class="css-1srb7t4">See more</a></div><div class="css-1pz1q9u"><div class="css-1rla8dl">Replies <span>(14)</span></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/juliancruzsanchez" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Julian Sanchez</div><div class="css-ds0hbm">Lead Developer<!-- --> at Chore Champion<!-- --> · <a href="/juliancruzsanchez/decisions/102183598405625910" class="css-nil"><time>May 30, 2019</time> | 11 upvotes · 186.7K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a><div class="css-6uh2e7">at</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/companies/chore-champion" target="_blank" class="css-1j2w1cg"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><div itemProp="name" class="css-1b2ktnx">Chore Champion</div></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>We use <span class="tool">Yarn</span> because it allows us to more simply manage our node_modules. It also simplifies commands and increases speed when installing modules. Our teams module download time was cut in half after switching from NPM to Yarn. We now require all employees to use Yarn (to prevent errors with package-lock.json and yarn.lock).</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/Pustelto" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Tomáš Pustelník</div><div class="css-ds0hbm"><a href="/Pustelto/decisions/101976572231515026" class="css-nil"><time>Apr 23, 2019</time> | 8 upvotes · 177.2K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I use <span class="tool">npm</span> since new version is pretty fast as well (Yarn may be still faster a bit but the difference isn't huge). No need for other dependency and mainly Yarn sometimes do not work. Sometimes when I want to install project dependencies I got error using Yarn but with npm everything is installed correctly.</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/marknelissen" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Mark Nelissen</div><div class="css-ds0hbm">CTO<!-- --> at Gemsotec bvba<!-- --> · <a href="/marknelissen/decisions/101985706297519161" class="css-nil"><time>Apr 25, 2019</time> | 5 upvotes · 176.1K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I use <span class="tool">npm</span> because I also mainly use <span class="tool">React</span> and <span class="tool">TypeScript</span>. Since several typings (from DefinitelyTyped) depend on the React typings, <span class="tool">Yarn</span> tends to mess up which leads to duplicate libraries present (different versions of the same type definition), which hinders the Typescript compiler. Npm always resolves to a single version per transitive dependency. At least that's my experience with both.</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/zen-li" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">zen-li</div><div class="css-ds0hbm"><a href="/zen-li/decisions/101981514516848693" class="css-nil"><time>Apr 24, 2019</time> | 5 upvotes · 174.8K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>p.s.</p> <p>I am not sure about the performance of the latest version of npm, whether it is different from my understanding of it below. Because I use npm very rarely when I had the following knowledge.</p> <p>------⏬</p> <p>I use <span class="tool">Yarn</span> because, first, yarn is the first tool to lock the version. Second, although npm also supports the lock version, when you use npm to lock the version, and then use package-lock.json on other systems, package-lock.json Will be modified. You understand what I mean, when you deploy projects based on Git...</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/FerJSsilva" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Fernando Silva</div><div class="css-ds0hbm"><a href="/FerJSsilva/decisions/102753437112655482" class="css-nil"><time>Sep 7, 2019</time> | 4 upvotes · 173.3K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>As far as I know Yarn is a super module of NPM. But it <strong>still needs npm</strong> to run.</p> <p>Yarn was developed by Facebook's guys to fix some npm issues and performance.</p> <p>If you use the last version of npm most of this problem does not exist anymore.</p> <p>You can choose the option which makes you more confortable. I like using yarn because I'm used to it.</p> <p>In the end the packages will be the same. Just try both and choose the one you feel more confortable. :)</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/SlyDen" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Denys Slipetskyy</div><div class="css-ds0hbm">Lead Software Engineer<!-- --> · <a href="/SlyDen/decisions/101980944144821506" class="css-nil"><time>Apr 24, 2019</time> | 3 upvotes · 173.5K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a><div class="css-6uh2e7">at</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/companies/epam-systems" target="_blank" class="css-1j2w1cg"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><div itemProp="name" class="css-1b2ktnx">EPAM Systems</div></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I use <span class="tool">Yarn</span> because it process my dependencies way faster, predictable deps resolution order, upgrade-interactive is very handy + some Yarn specific features (workspaces, Plug’n’Play alternative installation strategy) ...</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/hagemt" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Tor Hagemann</div><div class="css-ds0hbm">Principal Software Engineer<!-- --> at Socotra<!-- --> · <a href="/hagemt/decisions/107016985225797219" class="css-nil"><time>Sep 29, 2021</time> | 3 upvotes · 73.5K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>You should use whichever had the best DX (developer experience) for your team. If you are doing a massive front-end project, consider yarn if not only because it makes it a snap to go from zero to ready. What some people say about <code>npm</code> being more stable or easier for smaller projects is highly true as well. (not to mention, you sometimes have to install yarn) But, note that official NodeJS Docker images ship with both npm and yarn. If you want to use yarn, put <code>package-lock=false</code> and optionally <code>save-exact=true</code> in your project's <code>.npmrc</code> file. Compare whether you prefer the ergonomics of <code>yarn global add</code> over <code>npm install -g</code> or see fewer meaningless warnings for the specific set of dependencies you leverage.</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/Obapelumi" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Obapelumi</div><div class="css-ds0hbm"><a href="/Obapelumi/decisions/101987363682470495" class="css-nil"><time>Apr 25, 2019</time> | 3 upvotes · 173.2K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I am a minimalist too. I once had issues with installing Nuxt.js using NPM so I had to install <span class="tool">Yarn</span> but I also found that the Dev experience was much better</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/tataata" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">tataata</div><div class="css-ds0hbm">Frontend designer and developer<!-- --> · <a href="/tataata/decisions/101991649472457545" class="css-nil"><time>Apr 26, 2019</time> | 3 upvotes · 173.2K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p><span class="tool">Yarn</span> made it painless for the team to sync on versions of packages that we use on the project &lt;3 </p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/MyIsaak" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">MyIsaak</div><div class="css-ds0hbm"><a href="/MyIsaak/decisions/101976405870675588" class="css-nil"><time>Apr 23, 2019</time> | 3 upvotes · 173.3K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I use <span class="tool">npm</span> because its the official package manager for Node. It's reliability, security and speed has increased over time so the battle is over! </p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/131" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Francois Leurent</div><div class="css-ds0hbm">CWO<!-- --> at IVS<!-- --> · <a href="/131/decisions/101743960056230311" class="css-nil"><time>Apr 30, 2019</time> | 3 upvotes · 173.4K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a><div class="css-6uh2e7">at</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/companies/ivs" target="_blank" class="css-1j2w1cg"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><div itemProp="name" class="css-1b2ktnx">IVS</div></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>We tend to stick to npm, yarn is only a fancy alternative, not 10x better. Using a self -hosted private repository (via sinopia/npm-mirror) make package locking (mostly) pointless.</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/joemewes" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Digital All</div><div class="css-ds0hbm">Mr<!-- --> at 4 All Digital<!-- --> · <a href="/joemewes/decisions/101976207607809118" class="css-nil"><time>Apr 23, 2019</time> | 3 upvotes · 173.3K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I use <span class="tool">npm</span> because its packaged with node installation and handles npm tokens in CI/CD tools for private packages/libraries. </p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/izzur-zuhri" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Izzur Zuhri</div><div class="css-ds0hbm">Full Stack Developer<!-- --> · <a href="/izzur-zuhri/decisions/101984626605575198" class="css-nil"><time>Apr 25, 2019</time> | 3 upvotes · 173.2K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I use <span class="tool">npm</span> because it has a lot of community support and the performance difference with alternative tool is not so significant for me.</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/shuuji3" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Shuuji TAKAHASHI</div><div class="css-ds0hbm"> at shuuji3.xyz<!-- --> · <a href="/shuuji3/decisions/101976450283972106" class="css-nil"><time>Apr 23, 2019</time> | 3 upvotes · 173.4K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I use <span class="tool">Yarn</span> because it outputs nice progress messages with cute emoji and installs packages quickly if the package is cached. Also, Yarn creates <code>yarn.lock</code> file which makes the developer use the consistent environment.</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-gyrv08"></div></div></div><div class="css-gyrv08"></div><div class="css-n746ki"></div></div></div><div style="border-bottom:none;padding-bottom:0" class="css-5k0ecd"><div class="css-oa3yz4"><div class="css-1g9kten">Decisions about pnpm and Yarn</div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></div></div><div class="css-1vf0ygt"><div class="css-utnqcw"><div>Oleksandr Fedotov</div></div><div class="css-ds0hbm">Senior Software Engineer<!-- --> at joyn<!-- --> · <a href="/oleks-fedotov/decisions/103267297466989413" class="css-nil"><time>Dec 7, 2019</time> <!-- -->| 3 upvotes · 204.8K views</a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none"><path fill="#068DFE" d="M20.918 19.017l-1.442-4.195a10.3 10.3 0 0 0 1.062-4.537 10.208 10.208 0 0 0-2.949-7.207A10.199 10.199 0 0 0 10.436 0a10.23 10.23 0 0 0-7.428 3.006A10.228 10.228 0 0 0 0 10.437a10.199 10.199 0 0 0 3.077 7.153 10.207 10.207 0 0 0 7.191 2.95h.016a10.3 10.3 0 0 0 4.537-1.063l4.195 1.442a1.485 1.485 0 0 0 1.543-.357c.408-.408.545-1 .358-1.544z"></path><path fill="#FFF" d="M9.644 14.658a.923.923 0 0 1-.715.342.93.93 0 0 1-.71-.338l-1.98-2.36a1.044 1.044 0 0 1 .08-1.418.914.914 0 0 1 1.342.086l1.24 1.478 4.444-5.117a.914.914 0 0 1 1.342-.072c.39.372.42 1.006.068 1.418l-5.111 5.981z"></path></g></svg><div class="css-z9ms26">Chose</div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a><div class="css-6uh2e7">over</div><a href="/lerna" class="css-1pwtf47"><span title="Lerna" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/6207/OwqAUSQi_400x400.jpg" alt="Lerna" class="css-1rz3855"/></span><span class="css-i6njnm">Lerna</span></a><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a><div class="css-6uh2e7">at</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/companies/joyn" target="_blank" class="css-1j2w1cg"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><div itemProp="name" class="css-1b2ktnx">joyn</div></a><span class="css-103289b">(</span><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/joyn/smart-tv" target="_blank" class="css-1j2w1cg"><svg class="css-lnzci0" width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="path-1"></path><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="path-3"></path></defs><g id="Page-1" fill="none" fill-rule="evenodd"><g id="default-stack-icon"><g id="Group"><g id="b-link" fill="#333" fill-rule="nonzero"><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="b"></path></g><g id="Clipped"><mask id="mask-2" fill="#fff"><use xlink:href="#path-1"></use></mask><path d="M2.704 1.967c0-.14.11-.253.249-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.249-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252v-1.553zM10.14 1.967c0-.14.11-.253.25-.253h1.53c.138 0 .249.11.249.253v1.552c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553zM6.423 1.967a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395h.001zm0 3.429a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553h.001zM13.86 1.967c0-.14.108-.253.248-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967h.001zm0 3.428c0-.14.108-.252.248-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395h.001zm0 3.429c0-.14.108-.253.248-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824h.001zm3.717-6.857c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824z" id="Shape" fill="#919191" fill-rule="nonzero" opacity=".404" mask="url(#mask-2)"></path></g></g><g id="d-link" transform="translate(0 17)" fill="#FFF" fill-rule="nonzero"><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="d"></path></g><g id="Clipped" transform="translate(0 17)"><mask id="mask-4" fill="#fff"><use xlink:href="#path-3"></use></mask><rect id="Rectangle-path" fill="#E5E5E5" fill-rule="nonzero" mask="url(#mask-4)" x="5.408" y="2" width="13.521" height="1.717" rx=".859"></rect></g></g></g></svg><div itemProp="name" class="css-1b2ktnx">smart-tv</div></a><span class="css-odgfgk">)</span></div><div class="css-1dp4k20"><div class="css-ztg526"><p>As we have to build the application for many different TV platforms we want to split the application logic from the device/platform specific code. Previously we had different repositories and it was very hard to keep the development process when changes were done in multiple repositories, as we had to synchronize code reviews as well as merging and then updating the dependencies of projects. This issues would be even more critical when building the project from scratch what we did at Joyn. Therefor to keep all code in one place, at the same time keeping in separated in different modules we decided to give a try to monorepo. First we tried out lerna which was fine at the beginning, but later along the way we had issues with adding new dependencies which came out of the blue and were not easy to fix. Next round of evolution was <a href="https://yarnpkg.com/lang/en/docs/workspaces/" rel="nofollow noopener" target="_blank">yarn workspaces</a>, we are still using it and are pretty happy with dev experience it provides. And one more advantage we got when switched to yarn workspaces that we also switched from npm to yarn what improved the state of the lock file a lot, because with npm package-lock file was updated every time you run <code>npm install</code>, frequent updates of package-lock file were causing very often merge conflicts. So right now we not just having faster dependencies installation time but also no conflicts coming from lock file.</p></div></div></div><a class="css-1srb7t4">See more</a></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></div></div><div class="css-1vf0ygt"><div class="css-utnqcw"><div>Petr Bambušek</div></div><div class="css-ds0hbm">Head of Frontend<!-- --> at Mews<!-- --> · <a href="/pbambusek/decisions/103170189586345499" class="css-nil"><time>Nov 20, 2019</time> <!-- -->| 2 upvotes · 215.3K views</a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none"><path fill="#068DFE" d="M20.918 19.017l-1.442-4.195a10.3 10.3 0 0 0 1.062-4.537 10.208 10.208 0 0 0-2.949-7.207A10.199 10.199 0 0 0 10.436 0a10.23 10.23 0 0 0-7.428 3.006A10.228 10.228 0 0 0 0 10.437a10.199 10.199 0 0 0 3.077 7.153 10.207 10.207 0 0 0 7.191 2.95h.016a10.3 10.3 0 0 0 4.537-1.063l4.195 1.442a1.485 1.485 0 0 0 1.543-.357c.408-.408.545-1 .358-1.544z"></path><path fill="#FFF" d="M9.644 14.658a.923.923 0 0 1-.715.342.93.93 0 0 1-.71-.338l-1.98-2.36a1.044 1.044 0 0 1 .08-1.418.914.914 0 0 1 1.342.086l1.24 1.478 4.444-5.117a.914.914 0 0 1 1.342-.072c.39.372.42 1.006.068 1.418l-5.111 5.981z"></path></g></svg><div class="css-z9ms26">Chose</div><a href="/yarn" class="css-1pwtf47"><span title="Yarn" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/5848/44mC-kJ3.jpg" alt="Yarn" class="css-1rz3855"/></span><span class="css-i6njnm">Yarn</span></a><div class="css-6uh2e7">over</div><a href="/npm" class="css-1pwtf47"><span title="npm" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png" alt="npm" class="css-1rz3855"/></span><span class="css-i6njnm">npm</span></a><div class="css-6uh2e7">at</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/companies/mews" target="_blank" class="css-1j2w1cg"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><div itemProp="name" class="css-1b2ktnx">Mews</div></a><span class="css-103289b">(</span><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/mews/mews" target="_blank" class="css-1j2w1cg"><svg class="css-lnzci0" width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="path-1"></path><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="path-3"></path></defs><g id="Page-1" fill="none" fill-rule="evenodd"><g id="default-stack-icon"><g id="Group"><g id="b-link" fill="#333" fill-rule="nonzero"><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="b"></path></g><g id="Clipped"><mask id="mask-2" fill="#fff"><use xlink:href="#path-1"></use></mask><path d="M2.704 1.967c0-.14.11-.253.249-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.249-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252v-1.553zM10.14 1.967c0-.14.11-.253.25-.253h1.53c.138 0 .249.11.249.253v1.552c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553zM6.423 1.967a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395h.001zm0 3.429a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553h.001zM13.86 1.967c0-.14.108-.253.248-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967h.001zm0 3.428c0-.14.108-.252.248-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395h.001zm0 3.429c0-.14.108-.253.248-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824h.001zm3.717-6.857c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824z" id="Shape" fill="#919191" fill-rule="nonzero" opacity=".404" mask="url(#mask-2)"></path></g></g><g id="d-link" transform="translate(0 17)" fill="#FFF" fill-rule="nonzero"><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="d"></path></g><g id="Clipped" transform="translate(0 17)"><mask id="mask-4" fill="#fff"><use xlink:href="#path-3"></use></mask><rect id="Rectangle-path" fill="#E5E5E5" fill-rule="nonzero" mask="url(#mask-4)" x="5.408" y="2" width="13.521" height="1.717" rx=".859"></rect></g></g></g></svg><div itemProp="name" class="css-1b2ktnx">Mews</div></a><span class="css-odgfgk">)</span></div><div class="css-1dp4k20"><div class="css-ztg526"><p>This was no real choice - we switched the moment Yarn was available, and never looked back. Yarn is the only reasonable frontend package manager that's actually being developed. They even aim to heal the node_modules madness with v2! Npm is just copying its ideas on top of introducing massive bugs with every change. </p></div></div></div><a class="css-1srb7t4">See more</a></div><div class="css-gyrv08"></div><div class="css-n746ki"></div></div></div><div class="css-5k0ecd"><div style="padding-top:0;padding-bottom:0" class="css-1cuq2n9"><svg class="css-1cl6o07" xmlns="http://www.w3.org/2000/svg" width="123" height="70" viewBox="0 0 123 70"><g fill="none" fill-rule="evenodd"><g fill="#008FF9" stroke="#008FF9" opacity=".74"><g stroke-width="2.207" opacity=".413"><path d="M62.27 24.009c6.068 0 11.004-4.937 11.004-11.005C73.274 6.937 68.338 2 62.27 2S51.266 6.937 51.266 13.004c0 6.068 4.936 11.005 11.004 11.005zm0-19.368c4.612 0 8.363 3.752 8.363 8.363 0 4.612-3.751 8.364-8.363 8.364-4.611 0-8.363-3.752-8.363-8.364 0-4.611 3.752-8.363 8.363-8.363zm-.579 24.58c-11.177 0-20.271 9.28-20.271 20.689 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-9.951 7.932-18.047 17.683-18.047 9.75 0 17.683 8.096 17.683 18.047 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-11.407-9.093-20.688-20.271-20.688z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M33.506 27.484c-5.323 0-9.653-4.33-9.653-9.653s4.33-9.653 9.653-9.653c5.322 0 9.653 4.33 9.653 9.653 0 5.322-4.33 9.653-9.653 9.653zm0-16.99c-4.045 0-7.336 3.292-7.336 7.337s3.29 7.336 7.336 7.336c4.045 0 7.336-3.291 7.336-7.336s-3.291-7.336-7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M42.973 33.722c9.802 2.263 15.898 12.243 13.588 22.246a1.176 1.176 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.015-8.726-3.303-17.432-11.853-19.406-8.55-1.974-17.146 3.52-19.161 12.246a1.177 1.177 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.31-10.003 12.162-16.3 21.964-14.038z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M90.263 27.484c5.323 0 9.653-4.33 9.653-9.653s-4.33-9.653-9.653-9.653c-5.322 0-9.653 4.33-9.653 9.653 0 5.322 4.33 9.653 9.653 9.653zm0-16.99c4.045 0 7.337 3.292 7.337 7.337s-3.292 7.336-7.337 7.336-7.336-3.291-7.336-7.336 3.291-7.336 7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M80.217 33.722c-9.802 2.263-15.898 12.243-13.588 22.246.147.64.775 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.015-8.726 3.303-17.432 11.853-19.406 8.55-1.974 17.146 3.52 19.161 12.246.148.64.776 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.31-10.003-12.162-16.3-21.964-14.038z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".184"><path d="M111.547 31.915a7.05 7.05 0 0 0 7.042-7.042c0-3.884-3.159-7.043-7.042-7.043-3.885 0-7.043 3.16-7.043 7.043s3.16 7.042 7.043 7.042zm0-12.395a5.358 5.358 0 0 1 5.352 5.353c0 2.951-2.4 5.352-5.352 5.352a5.358 5.358 0 0 1-5.353-5.352 5.359 5.359 0 0 1 5.353-5.353zm-6.725 21.023a.815.815 0 0 1-1.119.139.75.75 0 0 1-.144-1.08c2.39-2.98 6.001-4.69 9.906-4.69 2.508 0 4.927.712 6.997 2.06a.753.753 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.152 11.152 0 0 0-6.103-1.796c-3.406 0-6.557 1.492-8.642 4.092z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".177"><path d="M10.871 31.915a7.05 7.05 0 0 1-7.042-7.042c0-3.884 3.159-7.043 7.042-7.043 3.885 0 7.043 3.16 7.043 7.043s-3.16 7.042-7.043 7.042zm0-12.395a5.358 5.358 0 0 0-5.352 5.353c0 2.951 2.4 5.352 5.352 5.352 2.952 0 5.353-2.4 5.353-5.352a5.359 5.359 0 0 0-5.353-5.353zM3.036 40.543a.818.818 0 0 1-1.121.139.751.751 0 0 1-.144-1.08c2.39-2.98 6.002-4.69 9.907-4.69 2.507 0 4.927.712 6.996 2.06a.751.751 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.147 11.147 0 0 0-6.102-1.797c-3.407 0-6.557 1.492-8.643 4.092z" opacity=".502"></path></g></g><g><path fill="#008FF9" stroke="#008FF9" stroke-width=".842" d="M61.047 16.51c-6.44 3.802-13.035 6.6-20.164 8.553a2.453 2.453 0 0 0-1.302.88 2.452 2.452 0 0 0-.504 1.487v9.447c0 11.603 5.26 19.355 10.029 24.121.827.81 1.69 1.57 2.569 2.274 2.796 2.241 5.735 3.912 7.985 4.731 1.047.382 1.953.58 2.636.58.684 0 1.59-.198 2.637-.58 2.19-.797 5.033-2.401 7.762-4.554a34.855 34.855 0 0 0 2.813-2.472c4.57-4.487 10.007-12.303 10.007-24.1V27.43c0-.603-.16-1.098-.46-1.493-.297-.388-.736-.684-1.346-.874-6.932-1.899-13.906-4.857-20.166-8.553a2.454 2.454 0 0 0-2.495 0z"></path><path fill="#FFF" stroke="#008FF9" stroke-width=".605" d="M62.079 18.257c-6.664 3.935-13.492 6.82-20.974 8.945v9.675c0 10.19 4.31 17.217 8.465 21.7V43.259c0-.483.197-.922.515-1.24a1.75 1.75 0 0 1 1.24-.514h2.21v-1.447c0-2.426.97-4.627 2.538-6.222 1.566-1.591 3.727-2.579 6.111-2.579a8.55 8.55 0 0 1 6.112 2.58 8.863 8.863 0 0 1 2.539 6.227v1.441h2.43c.484 0 .923.197 1.24.515.318.317.515.756.515 1.24v15.31c4.065-4.333 8.465-11.397 8.465-21.694l-.092-9.795-1.11-.31c-6.809-1.951-13.627-4.887-20.204-8.515zm.105 15.133c-1.81 0-3.451.748-4.64 1.956a6.7 6.7 0 0 0-1.921 4.71v1.448h13.123v-1.447a6.697 6.697 0 0 0-1.922-4.711 6.491 6.491 0 0 0-4.64-1.956z"></path><path fill="#FFF" d="M83.182 36.877c0 9.758-3.988 16.585-7.86 20.916V43.258a2.059 2.059 0 0 0-2.056-2.056h-2.129v-1.139c0-5.021-4.014-9.11-8.953-9.11-4.938 0-8.952 4.089-8.952 9.104v1.145h-1.908a2.059 2.059 0 0 0-2.056 2.056v14.535a4.32 4.32 0 0 1-.11-.122c-3.837-4.336-7.75-11.129-7.75-20.794V27.43c0-.055.037-.103.09-.118 7.331-2.009 14.114-4.885 20.735-8.794.02-.012.04-.017.062-.017s.043.005.062.017c6.437 3.8 13.607 6.84 20.735 8.794.053.015.09.063.09.118v9.447z"></path><path fill="#FFF" d="M67.197 57.374c-.6 0-1.1-.413-1.212-.96 0 0-.032-.23 0-.463.112-.546.613-.96 1.211-.96.681 0 1.235.535 1.235 1.192 0 .657-.554 1.191-1.235 1.191m-10.759-4.22c-.68 0-1.234-.534-1.234-1.19 0-.658.553-1.192 1.234-1.192.681 0 1.235.534 1.235 1.191s-.554 1.192-1.235 1.192m9.539-5.687v-.008c.112-.546.612-.96 1.21-.96.681 0 1.235.534 1.235 1.192 0 .657-.554 1.191-1.234 1.191-.6 0-1.1-.413-1.211-.96-.028-.21 0-.455 0-.455m1.22 6.446c-1.07 0-1.972.69-2.256 1.635h-1.393l-2.175-3.612v-.006l2.172-3.605h1.386c.285.944 1.187 1.634 2.257 1.634 1.297 0 2.35-1.016 2.35-2.268 0-1.253-1.053-2.269-2.35-2.269-1.07 0-1.972.69-2.257 1.634h-2.113l-.021-.012-2.56 4.252-.02.032h-1.521c-.285-.944-1.187-1.634-2.257-1.634-1.297 0-2.35 1.016-2.35 2.268 0 1.253 1.053 2.268 2.35 2.268 1.07 0 1.972-.69 2.257-1.634h1.555l2.546 4.227.011-.007h2.134c.284.944 1.187 1.634 2.256 1.634 1.298 0 2.35-1.016 2.35-2.268 0-1.253-1.052-2.269-2.35-2.269m1.246-12.712H55.925v-1.145c0-3.511 2.806-6.364 6.26-6.364 3.452 0 6.258 2.853 6.258 6.364v1.145z"></path></g></g></svg><div class="css-172fe00">Get Advice from developers at your company using StackShare Enterprise.<!-- --> <a href="/manage-companies/enterprise" class="css-1i2jin4">Sign up for StackShare Enterprise.</a></div><a href="/enterprise" class="css-1f94cd7">Learn More</a></div></div><div id="pros" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>Pros of pnpm</span></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>Pros of Yarn</span></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-1v4wqws"><div class="css-nil"><div class="css-uxqild"><h2 hidden="" class="css-nil">Pros of pnpm</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Works as a Node.js package manager</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Has CLI auto-completion</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Has a nice UI</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Fast</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Uses less disk space</span></div></li></ul></div></div></div></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-1v4wqws"><div class="css-nil"><div class="css-uxqild"><h2 hidden="" class="css-nil">Pros of Yarn</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">84</span></div></div><span class="css-rsz8c">Incredibly fast</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">21</span></div></div><span class="css-rsz8c">Easy to use</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">12</span></div></div><span class="css-rsz8c">Open Source</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">10</span></div></div><span class="css-rsz8c">Can install any npm package</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">7</span></div></div><span class="css-rsz8c">Works where npm fails</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">6</span></div></div><span class="css-rsz8c">Workspaces</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">Incomplete to run tasks</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Fast</span></div></li></ul></div></div></div></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div class="css-5k0ecd"><div class="css-p8n7zj"><div class="css-1uq0dwx"><svg class="css-1p6gwer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76 76"><g fill="none"><path fill="#068DFE" d="M73.548 63.742V23.29a6.137 6.137 0 0 0-6.129-6.129h-3.677C63.742 7.698 56.044 0 46.58 0c-9.464 0-17.162 7.698-17.162 17.161H8.581a6.136 6.136 0 0 0-6.13 6.13v40.45H0v6.13C0 73.251 2.75 76 6.129 76h63.742C73.251 76 76 73.25 76 69.871v-6.13h-2.452zm-6.129-44.13a3.682 3.682 0 0 1 3.678 3.678v40.452h-2.452V24.516c0-1.352-1.1-2.451-2.451-2.451h-3.175a17.04 17.04 0 0 0 .527-2.452h3.873zm-34.836-6.955l13.01 5.421 4.456 13.363c-1.115.27-2.272.43-3.468.43-8.112 0-14.71-6.598-14.71-14.71 0-1.571.254-3.084.712-4.504zm19.794 18.019l-4.394-13.184 9.818-9.819a14.63 14.63 0 0 1 3.49 9.488c0 6.053-3.678 11.26-8.914 13.515zM46.581 2.452a14.64 14.64 0 0 1 9.489 3.487l-9.775 9.774-12.762-5.316c2.453-4.714 7.376-7.945 13.048-7.945zM4.903 23.29a3.682 3.682 0 0 1 3.678-3.677h21.035c.12.837.289 1.657.526 2.452H9.806a2.454 2.454 0 0 0-2.451 2.451v39.226H4.903V23.29zm68.645 46.581a3.682 3.682 0 0 1-3.677 3.677H6.129a3.682 3.682 0 0 1-3.677-3.677v-3.677h25.254a9.525 9.525 0 0 0 6.407 2.451h7.775c2.39 0 4.645-.867 6.407-2.451h15.447v-2.452H47.299l-.36.36a7.096 7.096 0 0 1-5.052 2.092h-7.775a7.098 7.098 0 0 1-5.053-2.093l-.358-.36H9.806V24.517H31.1c2.762 5.789 8.653 9.807 15.482 9.807 6.828 0 12.72-4.018 15.481-9.807h4.132v41.678h7.354v3.677z"></path><path fill="#068DFE" d="M60.286 51.286c-.76 0-1.468.227-2.057.613l-4.32-3.176c.11-.344.186-.702.186-1.08 0-2.008-1.666-3.643-3.714-3.643s-3.714 1.635-3.714 3.643c0 .418.086.813.219 1.187l-6.935 5.442A3.728 3.728 0 0 0 38 53.714a3.73 3.73 0 0 0-2.215.736l-5.339-3.491c.075-.285.125-.58.125-.888 0-2.008-1.666-3.642-3.714-3.642-2.047 0-3.714 1.634-3.714 3.642 0 .309.05.603.125.888l-5.339 3.491a3.722 3.722 0 0 0-2.215-.736c-2.047 0-3.714 1.635-3.714 3.643S13.667 61 15.714 61c2.048 0 3.715-1.635 3.715-3.643 0-.308-.051-.602-.126-.887l5.34-3.492c.62.457 1.381.736 2.214.736s1.595-.279 2.215-.736l5.339 3.492c-.075.285-.125.58-.125.887C34.286 59.365 35.952 61 38 61s3.714-1.635 3.714-3.643c0-.418-.086-.813-.219-1.187l6.935-5.442a3.728 3.728 0 0 0 4.008-.055l4.319 3.176c-.11.344-.186.702-.186 1.08 0 2.008 1.667 3.642 3.715 3.642 2.047 0 3.714-1.634 3.714-3.642 0-2.009-1.667-3.643-3.714-3.643zM15.714 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm11.143-7.285a1.229 1.229 0 0 1-1.238-1.215c0-.668.556-1.214 1.238-1.214.682 0 1.238.546 1.238 1.214 0 .67-.556 1.215-1.238 1.215zM38 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm12.381-9.714a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm9.905 7.286a1.229 1.229 0 0 1-1.238-1.214c0-.67.556-1.215 1.238-1.215a1.23 1.23 0 0 1 1.238 1.215c0 .668-.556 1.214-1.238 1.214z"></path><path fill="#E8F4FF" d="M32 27H12v17h20z"></path><path fill="#068DFE" d="M17 32h10v2H17zm0 5h10v2H17zm18 2h2v2h-2z"></path><path fill="#E8F4FF" d="M39 39h24v2H39z"></path></g></svg><h1 class="css-lr10t7">Sign up to add or upvote pros<span class="css-4yzqpf">Make informed product decisions</span></h1></div><button data-testid="signupFullAccessButton" class="css-st9eg3">Sign up now</button></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>Cons of pnpm</span></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>Cons of Yarn</span></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-1v4wqws"><div class="css-nil"><div class="css-uxqild"><h2 hidden="" class="css-nil">Cons of pnpm</h2><ul class="css-7c9av6"></ul><div class="css-16s8o6z">Be the first to leave a con</div></div></div></div></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-1v4wqws"><div class="css-nil"><div class="css-uxqild"><h2 hidden="" class="css-nil">Cons of Yarn</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">15</span></div></div><span class="css-rsz8c">Facebook</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">6</span></div></div><span class="css-rsz8c">Sends data to facebook</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">3</span></div></div><span class="css-rsz8c">Should be installed separately</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">Cannot publish to registry other than npm</span></div></li></ul></div></div></div></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div class="css-5k0ecd"><div class="css-p8n7zj"><div class="css-1uq0dwx"><svg class="css-1p6gwer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76 76"><g fill="none"><path fill="#068DFE" d="M73.548 63.742V23.29a6.137 6.137 0 0 0-6.129-6.129h-3.677C63.742 7.698 56.044 0 46.58 0c-9.464 0-17.162 7.698-17.162 17.161H8.581a6.136 6.136 0 0 0-6.13 6.13v40.45H0v6.13C0 73.251 2.75 76 6.129 76h63.742C73.251 76 76 73.25 76 69.871v-6.13h-2.452zm-6.129-44.13a3.682 3.682 0 0 1 3.678 3.678v40.452h-2.452V24.516c0-1.352-1.1-2.451-2.451-2.451h-3.175a17.04 17.04 0 0 0 .527-2.452h3.873zm-34.836-6.955l13.01 5.421 4.456 13.363c-1.115.27-2.272.43-3.468.43-8.112 0-14.71-6.598-14.71-14.71 0-1.571.254-3.084.712-4.504zm19.794 18.019l-4.394-13.184 9.818-9.819a14.63 14.63 0 0 1 3.49 9.488c0 6.053-3.678 11.26-8.914 13.515zM46.581 2.452a14.64 14.64 0 0 1 9.489 3.487l-9.775 9.774-12.762-5.316c2.453-4.714 7.376-7.945 13.048-7.945zM4.903 23.29a3.682 3.682 0 0 1 3.678-3.677h21.035c.12.837.289 1.657.526 2.452H9.806a2.454 2.454 0 0 0-2.451 2.451v39.226H4.903V23.29zm68.645 46.581a3.682 3.682 0 0 1-3.677 3.677H6.129a3.682 3.682 0 0 1-3.677-3.677v-3.677h25.254a9.525 9.525 0 0 0 6.407 2.451h7.775c2.39 0 4.645-.867 6.407-2.451h15.447v-2.452H47.299l-.36.36a7.096 7.096 0 0 1-5.052 2.092h-7.775a7.098 7.098 0 0 1-5.053-2.093l-.358-.36H9.806V24.517H31.1c2.762 5.789 8.653 9.807 15.482 9.807 6.828 0 12.72-4.018 15.481-9.807h4.132v41.678h7.354v3.677z"></path><path fill="#068DFE" d="M60.286 51.286c-.76 0-1.468.227-2.057.613l-4.32-3.176c.11-.344.186-.702.186-1.08 0-2.008-1.666-3.643-3.714-3.643s-3.714 1.635-3.714 3.643c0 .418.086.813.219 1.187l-6.935 5.442A3.728 3.728 0 0 0 38 53.714a3.73 3.73 0 0 0-2.215.736l-5.339-3.491c.075-.285.125-.58.125-.888 0-2.008-1.666-3.642-3.714-3.642-2.047 0-3.714 1.634-3.714 3.642 0 .309.05.603.125.888l-5.339 3.491a3.722 3.722 0 0 0-2.215-.736c-2.047 0-3.714 1.635-3.714 3.643S13.667 61 15.714 61c2.048 0 3.715-1.635 3.715-3.643 0-.308-.051-.602-.126-.887l5.34-3.492c.62.457 1.381.736 2.214.736s1.595-.279 2.215-.736l5.339 3.492c-.075.285-.125.58-.125.887C34.286 59.365 35.952 61 38 61s3.714-1.635 3.714-3.643c0-.418-.086-.813-.219-1.187l6.935-5.442a3.728 3.728 0 0 0 4.008-.055l4.319 3.176c-.11.344-.186.702-.186 1.08 0 2.008 1.667 3.642 3.715 3.642 2.047 0 3.714-1.634 3.714-3.642 0-2.009-1.667-3.643-3.714-3.643zM15.714 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm11.143-7.285a1.229 1.229 0 0 1-1.238-1.215c0-.668.556-1.214 1.238-1.214.682 0 1.238.546 1.238 1.214 0 .67-.556 1.215-1.238 1.215zM38 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm12.381-9.714a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm9.905 7.286a1.229 1.229 0 0 1-1.238-1.214c0-.67.556-1.215 1.238-1.215a1.23 1.23 0 0 1 1.238 1.215c0 .668-.556 1.214-1.238 1.214z"></path><path fill="#E8F4FF" d="M32 27H12v17h20z"></path><path fill="#068DFE" d="M17 32h10v2H17zm0 5h10v2H17zm18 2h2v2h-2z"></path><path fill="#E8F4FF" d="M39 39h24v2H39z"></path></g></svg><h1 class="css-lr10t7">Sign up to add or upvote cons<span class="css-4yzqpf">Make informed product decisions</span></h1></div><button data-testid="signupFullAccessButton" class="css-st9eg3">Sign up now</button></div></div><div id="stats" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-acfjt6"><div class="css-w707sh"></div></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-acfjt6"><div class="css-w707sh"></div></div></div><div style="border-right:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-14bxxd1"><a href="https://github.com/pnpm/pnpm" target="_blank" class="css-1hlwa6q"><svg class="css-f9zb2m" xmlns="http://www.w3.org/2000/svg" width="50" height="48" viewBox="0 0 50 48"><path fill="#161514" fill-rule="evenodd" d="M0 24.608C0 35.48 7.163 44.703 17.097 47.956c1.25.227 1.707-.533 1.707-1.185 0-.584-.022-2.132-.034-4.185-6.954 1.487-8.421-3.3-8.421-3.3-1.138-2.842-2.777-3.599-2.777-3.599-2.27-1.526.172-1.495.172-1.495 2.51.173 3.83 2.536 3.83 2.536 2.23 3.76 5.851 2.674 7.276 2.044.227-1.59.873-2.674 1.586-3.289-5.55-.62-11.387-2.733-11.387-12.162 0-2.686.974-4.884 2.574-6.603-.258-.622-1.116-3.125.245-6.512 0 0 2.098-.662 6.874 2.523 1.994-.547 4.133-.82 6.259-.83 2.124.01 4.262.283 6.258.83 4.773-3.185 6.868-2.523 6.868-2.523 1.365 3.387.507 5.89.25 6.512 1.603 1.72 2.57 3.917 2.57 6.603 0 9.454-5.846 11.534-11.414 12.143.896.76 1.696 2.26 1.696 4.557 0 3.289-.031 5.943-.031 6.75 0 .658.451 1.424 1.719 1.184C42.844 44.693 50 35.477 50 24.608 50 11.017 38.806 0 24.998 0 11.194 0 0 11.017 0 24.608z" opacity=".35"></path></svg><div class="css-1wdjt5z"><div class="css-w707sh"></div></div></a></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-14bxxd1"><a href="https://github.com/yarnpkg/yarn" target="_blank" class="css-1hlwa6q"><svg class="css-f9zb2m" xmlns="http://www.w3.org/2000/svg" width="50" height="48" viewBox="0 0 50 48"><path fill="#161514" fill-rule="evenodd" d="M0 24.608C0 35.48 7.163 44.703 17.097 47.956c1.25.227 1.707-.533 1.707-1.185 0-.584-.022-2.132-.034-4.185-6.954 1.487-8.421-3.3-8.421-3.3-1.138-2.842-2.777-3.599-2.777-3.599-2.27-1.526.172-1.495.172-1.495 2.51.173 3.83 2.536 3.83 2.536 2.23 3.76 5.851 2.674 7.276 2.044.227-1.59.873-2.674 1.586-3.289-5.55-.62-11.387-2.733-11.387-12.162 0-2.686.974-4.884 2.574-6.603-.258-.622-1.116-3.125.245-6.512 0 0 2.098-.662 6.874 2.523 1.994-.547 4.133-.82 6.259-.83 2.124.01 4.262.283 6.258.83 4.773-3.185 6.868-2.523 6.868-2.523 1.365 3.387.507 5.89.25 6.512 1.603 1.72 2.57 3.917 2.57 6.603 0 9.454-5.846 11.534-11.414 12.143.896.76 1.696 2.26 1.696 4.557 0 3.289-.031 5.943-.031 6.75 0 .658.451 1.424 1.719 1.184C42.844 44.693 50 35.477 50 24.608 50 11.017 38.806 0 24.998 0 11.194 0 0 11.017 0 24.608z" opacity=".35"></path></svg><div class="css-1wdjt5z"><div class="css-w707sh"></div></div></a></div></div><div style="border-right:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div id="description" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><h2 class="css-i52n91">What is pnpm?</h2><div class="css-13sfqhu">It uses hard links and symlinks to save one version of a module only ever once on a disk. When using npm or Yarn for example, if you have 100 projects using the same version of lodash, you will have 100 copies of lodash on disk. With pnpm, lodash will be saved in a single place on the disk and a hard link will put it into the node_modules where it should be installed.</div></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><h2 class="css-i52n91">What is Yarn?</h2><div class="css-13sfqhu">Yarn caches every package it downloads so it never needs to again. It also parallelizes operations to maximize resource utilization so install times are faster than ever.</div></div></div><div style="border-right:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div class="css-5k0ecd"><div data-testid="getAdvice" class="css-1ke07jm"><div class="css-1di6wpo"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><h1 class="css-lr10t7">Need advice about which tool to choose?<span class="css-4yzqpf">Ask the StackShare community!</span></h1></div><button class="css-st9eg3">Get Advice</button></div></div><div class="css-5k0ecd"><div id="jobs" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div class="css-f8hv9w"><span>Jobs that mention pnpm and Yarn as a desired skillset</span></div><div class="css-i5u9v5"><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/cbre" title="CBRE&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://careers.cbre.com/careers/JobDetail/GCP-Data-Engineer-REMOTE/82875" title="GCP Data Engineer (REMOTE)" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">GCP Data Engineer (REMOTE)</a></div><a href="/companies/cbre" title="CBRE&#x27;s company profile" class="css-6mpj06">CBRE</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">United States of America California Sunnyvale</span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="GCP Data Engineer (REMOTE)" href="https://careers.cbre.com/careers/JobDetail/GCP-Data-Engineer-REMOTE/82875" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Tier" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/47971/default_07b8d6d94fc9994c7b91edfd8136959124c8288a.png" alt="Tier" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Google Workspace" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/21740/default_1a035292a70299ebcf56b81ffe56137b4b5504e1.png" alt="Google Workspace" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Collect" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/12142/U9KsL1zr_400x400.jpg" alt="Collect" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->13</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/pinterest" title="Pinterest&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://www.pinterestcareers.com/job-form?gh_jid=3887144" title="Site Reliability Engineer (Contract)" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">Site Reliability Engineer (Contract)</a></div><a href="/companies/pinterest" title="Pinterest&#x27;s company profile" class="css-6mpj06">Pinterest</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">San Francisco, CA, US; </span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="Site Reliability Engineer (Contract)" href="https://www.pinterestcareers.com/job-form?gh_jid=3887144" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Infra" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40791/default_a4357de5c49d215b8aed95cbec211f1cf5885911.jpg" alt="Infra" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Dream" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png" alt="Dream" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="OpenLDAP" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/5225/zPH8xLZQ_400x400.jpg" alt="OpenLDAP" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->10</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div></div><div class="css-f7loz8"><div><a data-testid="seeJobsForLink" href="/jobs/pnpm" title="pnpm jobs" class="css-1xexurq">See jobs for pnpm</a></div><div><a data-testid="seeJobsForLink" href="/jobs/yarn" title="Yarn jobs" class="css-1xexurq">See jobs for Yarn</a></div></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>What companies use pnpm?</span></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>What companies use Yarn?</span></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-nil"><div class="css-4pt7vy"><h2 hidden="" class="css-nil">What companies use pnpm?</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><a href="/blablacar/blablacar" class="css-mta8ak"><div class="css-1pwtf47"><span title="BlaBlaCar" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/11170/thumb_cb2311170746b3089a211c13b503fe8170ba810b.png" alt="BlaBlaCar" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">BlaBlaCar</span></a></li><li class="css-6nrkpz"><a href="/vinted/vinted" class="css-mta8ak"><div class="css-1pwtf47"><span title="Vinted" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/15390/thumb_dca2eaeb5d56b5a433aeef468fe58263d3db372d.png" alt="Vinted" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Vinted</span></a></li><li class="css-6nrkpz"><a href="/ovrsea/ovrsea" class="css-mta8ak"><div class="css-1pwtf47"><span title="OVRSEA" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/27567/thumb_269dbd730fe07226470a4cb7b794ff7d31c1ae26.png" alt="OVRSEA" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">OVRSEA</span></a></li><li class="css-6nrkpz"><a href="/maze/maze" class="css-mta8ak"><div class="css-1pwtf47"><span title="Maze" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/28514/thumb_2ddc764457a27bb38a65aa69f7278e3487587034.png" alt="Maze" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Maze</span></a></li><li class="css-6nrkpz"><a href="/orbulo/tabulo" class="css-mta8ak"><div class="css-1pwtf47"><span title="Orbulo" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/167435/thumb_ef48c6a173a4b42168d70254308862dcd25f95a2.png" alt="Orbulo" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Orbulo</span></a></li><li class="css-6nrkpz"><a href="/u29dc/www" class="css-mta8ak"><div class="css-1pwtf47"><span title="u29dc" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/162293/thumb_68436bd9e825415d3f63b591174181c5d6c3eb15.png" alt="u29dc" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">u29dc</span></a></li><li class="css-6nrkpz"><a href="/trybe/trybe" class="css-mta8ak"><div class="css-1pwtf47"><span title="Trybe" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/171537/thumb_813631ec4e31f04ae1a227b9fafd5b43b650efc2.png" alt="Trybe" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Trybe</span></a></li></ul></div></div></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-nil"><div class="css-4pt7vy"><h2 hidden="" class="css-nil">What companies use Yarn?</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><a href="/stackshare/stackshare" class="css-mta8ak"><div class="css-1pwtf47"><span title="StackShare" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/1595/thumb_0ef9f2b4cb2992a16b9ce66eafac78c97fa851e4.png" alt="StackShare" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">StackShare</span></a></li><li class="css-6nrkpz"><a href="/hepsiburada/hepsiburada" class="css-mta8ak"><div class="css-1pwtf47"><span title="Hepsiburada" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/29765/thumb_11753097.png" alt="Hepsiburada" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Hepsiburada</span></a></li><li class="css-6nrkpz"><a href="/doordash/doordash" class="css-mta8ak"><div class="css-1pwtf47"><span title="DoorDash" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/3995/thumb_35666fa639c12931b04644a36acd00792afce0ae.jpg" alt="DoorDash" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">DoorDash</span></a></li><li class="css-6nrkpz"><a href="/atolye15/stack" class="css-mta8ak"><div class="css-1pwtf47"><span title="Atolye15" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/34122/thumb_4765ff1751ec414598e2001cc7c3a01e978249b3.png" alt="Atolye15" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Atolye15</span></a></li><li class="css-6nrkpz"><a href="/revolut/revolut" class="css-mta8ak"><div class="css-1pwtf47"><span title="Revolut" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/17445/thumb_b8eec4bab7316116a7e0909123bf7e3df6e028aa.png" alt="Revolut" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Revolut</span></a></li><li class="css-6nrkpz"><a href="/trivago/trivago" class="css-mta8ak"><div class="css-1pwtf47"><span title="trivago" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/2084/thumb_79d34713b767344ee779dd08bde3899f9a7939b4.png" alt="trivago" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">trivago</span></a></li><li class="css-6nrkpz"><a href="/alibaba-group/alibaba-travels" class="css-mta8ak"><div class="css-1pwtf47"><span title="Alibaba Group" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/162563/thumb_778ed136d08980e90396ec94375170f61fd083a4.png" alt="Alibaba Group" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Alibaba Group</span></a></li></ul></div></div></div></div><div style="border-right:0;padding-top:0;margin-top:-20px" data-notes="index 2 num 3 offset 0" class="css-3vlw85"><div style="margin-top:0;border:0" class="css-cn7d1w"><svg class="css-1fj3l7d" xmlns="http://www.w3.org/2000/svg" width="123" height="70" viewBox="0 0 123 70"><g fill="none" fill-rule="evenodd"><g fill="#008FF9" stroke="#008FF9" opacity=".74"><g stroke-width="2.207" opacity=".413"><path d="M62.27 24.009c6.068 0 11.004-4.937 11.004-11.005C73.274 6.937 68.338 2 62.27 2S51.266 6.937 51.266 13.004c0 6.068 4.936 11.005 11.004 11.005zm0-19.368c4.612 0 8.363 3.752 8.363 8.363 0 4.612-3.751 8.364-8.363 8.364-4.611 0-8.363-3.752-8.363-8.364 0-4.611 3.752-8.363 8.363-8.363zm-.579 24.58c-11.177 0-20.271 9.28-20.271 20.689 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-9.951 7.932-18.047 17.683-18.047 9.75 0 17.683 8.096 17.683 18.047 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-11.407-9.093-20.688-20.271-20.688z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M33.506 27.484c-5.323 0-9.653-4.33-9.653-9.653s4.33-9.653 9.653-9.653c5.322 0 9.653 4.33 9.653 9.653 0 5.322-4.33 9.653-9.653 9.653zm0-16.99c-4.045 0-7.336 3.292-7.336 7.337s3.29 7.336 7.336 7.336c4.045 0 7.336-3.291 7.336-7.336s-3.291-7.336-7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M42.973 33.722c9.802 2.263 15.898 12.243 13.588 22.246a1.176 1.176 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.015-8.726-3.303-17.432-11.853-19.406-8.55-1.974-17.146 3.52-19.161 12.246a1.177 1.177 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.31-10.003 12.162-16.3 21.964-14.038z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M90.263 27.484c5.323 0 9.653-4.33 9.653-9.653s-4.33-9.653-9.653-9.653c-5.322 0-9.653 4.33-9.653 9.653 0 5.322 4.33 9.653 9.653 9.653zm0-16.99c4.045 0 7.337 3.292 7.337 7.337s-3.292 7.336-7.337 7.336-7.336-3.291-7.336-7.336 3.291-7.336 7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M80.217 33.722c-9.802 2.263-15.898 12.243-13.588 22.246.147.64.775 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.015-8.726 3.303-17.432 11.853-19.406 8.55-1.974 17.146 3.52 19.161 12.246.148.64.776 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.31-10.003-12.162-16.3-21.964-14.038z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".184"><path d="M111.547 31.915a7.05 7.05 0 0 0 7.042-7.042c0-3.884-3.159-7.043-7.042-7.043-3.885 0-7.043 3.16-7.043 7.043s3.16 7.042 7.043 7.042zm0-12.395a5.358 5.358 0 0 1 5.352 5.353c0 2.951-2.4 5.352-5.352 5.352a5.358 5.358 0 0 1-5.353-5.352 5.359 5.359 0 0 1 5.353-5.353zm-6.725 21.023a.815.815 0 0 1-1.119.139.75.75 0 0 1-.144-1.08c2.39-2.98 6.001-4.69 9.906-4.69 2.508 0 4.927.712 6.997 2.06a.753.753 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.152 11.152 0 0 0-6.103-1.796c-3.406 0-6.557 1.492-8.642 4.092z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".177"><path d="M10.871 31.915a7.05 7.05 0 0 1-7.042-7.042c0-3.884 3.159-7.043 7.042-7.043 3.885 0 7.043 3.16 7.043 7.043s-3.16 7.042-7.043 7.042zm0-12.395a5.358 5.358 0 0 0-5.352 5.353c0 2.951 2.4 5.352 5.352 5.352 2.952 0 5.353-2.4 5.353-5.352a5.359 5.359 0 0 0-5.353-5.353zM3.036 40.543a.818.818 0 0 1-1.121.139.751.751 0 0 1-.144-1.08c2.39-2.98 6.002-4.69 9.907-4.69 2.507 0 4.927.712 6.996 2.06a.751.751 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.147 11.147 0 0 0-6.102-1.797c-3.407 0-6.557 1.492-8.643 4.092z" opacity=".502"></path></g></g><g><path fill="#008FF9" stroke="#008FF9" stroke-width=".842" d="M61.047 16.51c-6.44 3.802-13.035 6.6-20.164 8.553a2.453 2.453 0 0 0-1.302.88 2.452 2.452 0 0 0-.504 1.487v9.447c0 11.603 5.26 19.355 10.029 24.121.827.81 1.69 1.57 2.569 2.274 2.796 2.241 5.735 3.912 7.985 4.731 1.047.382 1.953.58 2.636.58.684 0 1.59-.198 2.637-.58 2.19-.797 5.033-2.401 7.762-4.554a34.855 34.855 0 0 0 2.813-2.472c4.57-4.487 10.007-12.303 10.007-24.1V27.43c0-.603-.16-1.098-.46-1.493-.297-.388-.736-.684-1.346-.874-6.932-1.899-13.906-4.857-20.166-8.553a2.454 2.454 0 0 0-2.495 0z"></path><path fill="#FFF" stroke="#008FF9" stroke-width=".605" d="M62.079 18.257c-6.664 3.935-13.492 6.82-20.974 8.945v9.675c0 10.19 4.31 17.217 8.465 21.7V43.259c0-.483.197-.922.515-1.24a1.75 1.75 0 0 1 1.24-.514h2.21v-1.447c0-2.426.97-4.627 2.538-6.222 1.566-1.591 3.727-2.579 6.111-2.579a8.55 8.55 0 0 1 6.112 2.58 8.863 8.863 0 0 1 2.539 6.227v1.441h2.43c.484 0 .923.197 1.24.515.318.317.515.756.515 1.24v15.31c4.065-4.333 8.465-11.397 8.465-21.694l-.092-9.795-1.11-.31c-6.809-1.951-13.627-4.887-20.204-8.515zm.105 15.133c-1.81 0-3.451.748-4.64 1.956a6.7 6.7 0 0 0-1.921 4.71v1.448h13.123v-1.447a6.697 6.697 0 0 0-1.922-4.711 6.491 6.491 0 0 0-4.64-1.956z"></path><path fill="#FFF" d="M83.182 36.877c0 9.758-3.988 16.585-7.86 20.916V43.258a2.059 2.059 0 0 0-2.056-2.056h-2.129v-1.139c0-5.021-4.014-9.11-8.953-9.11-4.938 0-8.952 4.089-8.952 9.104v1.145h-1.908a2.059 2.059 0 0 0-2.056 2.056v14.535a4.32 4.32 0 0 1-.11-.122c-3.837-4.336-7.75-11.129-7.75-20.794V27.43c0-.055.037-.103.09-.118 7.331-2.009 14.114-4.885 20.735-8.794.02-.012.04-.017.062-.017s.043.005.062.017c6.437 3.8 13.607 6.84 20.735 8.794.053.015.09.063.09.118v9.447z"></path><path fill="#FFF" d="M67.197 57.374c-.6 0-1.1-.413-1.212-.96 0 0-.032-.23 0-.463.112-.546.613-.96 1.211-.96.681 0 1.235.535 1.235 1.192 0 .657-.554 1.191-1.235 1.191m-10.759-4.22c-.68 0-1.234-.534-1.234-1.19 0-.658.553-1.192 1.234-1.192.681 0 1.235.534 1.235 1.191s-.554 1.192-1.235 1.192m9.539-5.687v-.008c.112-.546.612-.96 1.21-.96.681 0 1.235.534 1.235 1.192 0 .657-.554 1.191-1.234 1.191-.6 0-1.1-.413-1.211-.96-.028-.21 0-.455 0-.455m1.22 6.446c-1.07 0-1.972.69-2.256 1.635h-1.393l-2.175-3.612v-.006l2.172-3.605h1.386c.285.944 1.187 1.634 2.257 1.634 1.297 0 2.35-1.016 2.35-2.268 0-1.253-1.053-2.269-2.35-2.269-1.07 0-1.972.69-2.257 1.634h-2.113l-.021-.012-2.56 4.252-.02.032h-1.521c-.285-.944-1.187-1.634-2.257-1.634-1.297 0-2.35 1.016-2.35 2.268 0 1.253 1.053 2.268 2.35 2.268 1.07 0 1.972-.69 2.257-1.634h1.555l2.546 4.227.011-.007h2.134c.284.944 1.187 1.634 2.256 1.634 1.298 0 2.35-1.016 2.35-2.268 0-1.253-1.052-2.269-2.35-2.269m1.246-12.712H55.925v-1.145c0-3.511 2.806-6.364 6.26-6.364 3.452 0 6.258 2.853 6.258 6.364v1.145z"></path></g></g></svg><div class="css-i272tr">See which teams inside your own company are using pnpm or Yarn.<!-- --> </div><a href="/manage-companies/enterprise" class="css-56ijgy">Sign up for StackShare Enterprise</a><a href="/enterprise" class="css-1l7t0dr">Learn More</a></div></div><div class="css-5k0ecd"><div class="css-p8n7zj"><div class="css-1uq0dwx"><svg class="css-1p6gwer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76 76"><g fill="none"><path fill="#068DFE" d="M73.548 63.742V23.29a6.137 6.137 0 0 0-6.129-6.129h-3.677C63.742 7.698 56.044 0 46.58 0c-9.464 0-17.162 7.698-17.162 17.161H8.581a6.136 6.136 0 0 0-6.13 6.13v40.45H0v6.13C0 73.251 2.75 76 6.129 76h63.742C73.251 76 76 73.25 76 69.871v-6.13h-2.452zm-6.129-44.13a3.682 3.682 0 0 1 3.678 3.678v40.452h-2.452V24.516c0-1.352-1.1-2.451-2.451-2.451h-3.175a17.04 17.04 0 0 0 .527-2.452h3.873zm-34.836-6.955l13.01 5.421 4.456 13.363c-1.115.27-2.272.43-3.468.43-8.112 0-14.71-6.598-14.71-14.71 0-1.571.254-3.084.712-4.504zm19.794 18.019l-4.394-13.184 9.818-9.819a14.63 14.63 0 0 1 3.49 9.488c0 6.053-3.678 11.26-8.914 13.515zM46.581 2.452a14.64 14.64 0 0 1 9.489 3.487l-9.775 9.774-12.762-5.316c2.453-4.714 7.376-7.945 13.048-7.945zM4.903 23.29a3.682 3.682 0 0 1 3.678-3.677h21.035c.12.837.289 1.657.526 2.452H9.806a2.454 2.454 0 0 0-2.451 2.451v39.226H4.903V23.29zm68.645 46.581a3.682 3.682 0 0 1-3.677 3.677H6.129a3.682 3.682 0 0 1-3.677-3.677v-3.677h25.254a9.525 9.525 0 0 0 6.407 2.451h7.775c2.39 0 4.645-.867 6.407-2.451h15.447v-2.452H47.299l-.36.36a7.096 7.096 0 0 1-5.052 2.092h-7.775a7.098 7.098 0 0 1-5.053-2.093l-.358-.36H9.806V24.517H31.1c2.762 5.789 8.653 9.807 15.482 9.807 6.828 0 12.72-4.018 15.481-9.807h4.132v41.678h7.354v3.677z"></path><path fill="#068DFE" d="M60.286 51.286c-.76 0-1.468.227-2.057.613l-4.32-3.176c.11-.344.186-.702.186-1.08 0-2.008-1.666-3.643-3.714-3.643s-3.714 1.635-3.714 3.643c0 .418.086.813.219 1.187l-6.935 5.442A3.728 3.728 0 0 0 38 53.714a3.73 3.73 0 0 0-2.215.736l-5.339-3.491c.075-.285.125-.58.125-.888 0-2.008-1.666-3.642-3.714-3.642-2.047 0-3.714 1.634-3.714 3.642 0 .309.05.603.125.888l-5.339 3.491a3.722 3.722 0 0 0-2.215-.736c-2.047 0-3.714 1.635-3.714 3.643S13.667 61 15.714 61c2.048 0 3.715-1.635 3.715-3.643 0-.308-.051-.602-.126-.887l5.34-3.492c.62.457 1.381.736 2.214.736s1.595-.279 2.215-.736l5.339 3.492c-.075.285-.125.58-.125.887C34.286 59.365 35.952 61 38 61s3.714-1.635 3.714-3.643c0-.418-.086-.813-.219-1.187l6.935-5.442a3.728 3.728 0 0 0 4.008-.055l4.319 3.176c-.11.344-.186.702-.186 1.08 0 2.008 1.667 3.642 3.715 3.642 2.047 0 3.714-1.634 3.714-3.642 0-2.009-1.667-3.643-3.714-3.643zM15.714 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm11.143-7.285a1.229 1.229 0 0 1-1.238-1.215c0-.668.556-1.214 1.238-1.214.682 0 1.238.546 1.238 1.214 0 .67-.556 1.215-1.238 1.215zM38 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm12.381-9.714a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm9.905 7.286a1.229 1.229 0 0 1-1.238-1.214c0-.67.556-1.215 1.238-1.215a1.23 1.23 0 0 1 1.238 1.215c0 .668-.556 1.214-1.238 1.214z"></path><path fill="#E8F4FF" d="M32 27H12v17h20z"></path><path fill="#068DFE" d="M17 32h10v2H17zm0 5h10v2H17zm18 2h2v2h-2z"></path><path fill="#E8F4FF" d="M39 39h24v2H39z"></path></g></svg><h1 class="css-lr10t7">Sign up to get full access to all the companies<span class="css-4yzqpf">Make informed product decisions</span></h1></div><button data-testid="signupFullAccessButton" class="css-st9eg3">Sign up now</button></div></div><div id="integrations" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>What tools integrate with pnpm?</span></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>What tools integrate with Yarn?</span></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-nil"><div class="css-4pt7vy"><h2 hidden="" class="css-nil">What tools integrate with pnpm?</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><a href="/linux" class="css-mta8ak"><div class="css-1pwtf47"><span title="Linux" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/10483/thumb_linux.png" alt="Linux" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Linux</span></a></li><li class="css-6nrkpz"><a href="/windows" class="css-mta8ak"><div class="css-1pwtf47"><span title="Windows" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/2881/thumb_U54M_YbJ_400x400.jpg" alt="Windows" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Windows</span></a></li><li class="css-6nrkpz"><a href="/macos" class="css-mta8ak"><div class="css-1pwtf47"><span title="macOS" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/5560/thumb_macos.png" alt="macOS" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">macOS</span></a></li></ul></div></div></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-nil"><div class="css-4pt7vy"><h2 hidden="" class="css-nil">What tools integrate with Yarn?</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><a href="/javascript" class="css-mta8ak"><div class="css-1pwtf47"><span title="JavaScript" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1209/thumb_javascript.jpeg" alt="JavaScript" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">JavaScript</span></a></li><li class="css-6nrkpz"><a href="/npm" class="css-mta8ak"><div class="css-1pwtf47"><span title="npm" class="css-13fg6qi service"><img src="https://img.stackshare.io/package_manager/1120/thumb_lejvzrnlpb308aftn31u.png" alt="npm" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">npm</span></a></li><li class="css-6nrkpz"><a href="/phpmyadmin" class="css-mta8ak"><div class="css-1pwtf47"><span title="phpMyAdmin" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/2102/thumb_3pl3dljQ_400x400.png" alt="phpMyAdmin" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">phpMyAdmin</span></a></li><li class="css-6nrkpz"><a href="/dependabot" class="css-mta8ak"><div class="css-1pwtf47"><span title="Dependabot" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/7414/thumb_10dc0b08cff1f1e91e62a7dac5d50046690d3dbb.png" alt="Dependabot" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Dependabot</span></a></li><li class="css-6nrkpz"><a href="/bit" class="css-mta8ak"><div class="css-1pwtf47"><span title="Bit" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/4616/thumb_QP1hRAU5_400x400.jpg" alt="Bit" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Bit</span></a></li><li class="css-6nrkpz"><a href="/whitesource" class="css-mta8ak"><div class="css-1pwtf47"><span title="WhiteSource" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/7148/thumb_sJbRTaNm_400x400.png" alt="WhiteSource" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">WhiteSource</span></a></li><li class="css-6nrkpz"><a href="/fossa" class="css-mta8ak"><div class="css-1pwtf47"><span title="FOSSA" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/7083/thumb_fossa-glyph-dark.png" alt="FOSSA" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">FOSSA</span></a></li></ul></div></div></div></div><div style="border-right:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div class="css-5k0ecd"><div class="css-p8n7zj"><div class="css-1uq0dwx"><svg class="css-1p6gwer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76 76"><g fill="none"><path fill="#068DFE" d="M73.548 63.742V23.29a6.137 6.137 0 0 0-6.129-6.129h-3.677C63.742 7.698 56.044 0 46.58 0c-9.464 0-17.162 7.698-17.162 17.161H8.581a6.136 6.136 0 0 0-6.13 6.13v40.45H0v6.13C0 73.251 2.75 76 6.129 76h63.742C73.251 76 76 73.25 76 69.871v-6.13h-2.452zm-6.129-44.13a3.682 3.682 0 0 1 3.678 3.678v40.452h-2.452V24.516c0-1.352-1.1-2.451-2.451-2.451h-3.175a17.04 17.04 0 0 0 .527-2.452h3.873zm-34.836-6.955l13.01 5.421 4.456 13.363c-1.115.27-2.272.43-3.468.43-8.112 0-14.71-6.598-14.71-14.71 0-1.571.254-3.084.712-4.504zm19.794 18.019l-4.394-13.184 9.818-9.819a14.63 14.63 0 0 1 3.49 9.488c0 6.053-3.678 11.26-8.914 13.515zM46.581 2.452a14.64 14.64 0 0 1 9.489 3.487l-9.775 9.774-12.762-5.316c2.453-4.714 7.376-7.945 13.048-7.945zM4.903 23.29a3.682 3.682 0 0 1 3.678-3.677h21.035c.12.837.289 1.657.526 2.452H9.806a2.454 2.454 0 0 0-2.451 2.451v39.226H4.903V23.29zm68.645 46.581a3.682 3.682 0 0 1-3.677 3.677H6.129a3.682 3.682 0 0 1-3.677-3.677v-3.677h25.254a9.525 9.525 0 0 0 6.407 2.451h7.775c2.39 0 4.645-.867 6.407-2.451h15.447v-2.452H47.299l-.36.36a7.096 7.096 0 0 1-5.052 2.092h-7.775a7.098 7.098 0 0 1-5.053-2.093l-.358-.36H9.806V24.517H31.1c2.762 5.789 8.653 9.807 15.482 9.807 6.828 0 12.72-4.018 15.481-9.807h4.132v41.678h7.354v3.677z"></path><path fill="#068DFE" d="M60.286 51.286c-.76 0-1.468.227-2.057.613l-4.32-3.176c.11-.344.186-.702.186-1.08 0-2.008-1.666-3.643-3.714-3.643s-3.714 1.635-3.714 3.643c0 .418.086.813.219 1.187l-6.935 5.442A3.728 3.728 0 0 0 38 53.714a3.73 3.73 0 0 0-2.215.736l-5.339-3.491c.075-.285.125-.58.125-.888 0-2.008-1.666-3.642-3.714-3.642-2.047 0-3.714 1.634-3.714 3.642 0 .309.05.603.125.888l-5.339 3.491a3.722 3.722 0 0 0-2.215-.736c-2.047 0-3.714 1.635-3.714 3.643S13.667 61 15.714 61c2.048 0 3.715-1.635 3.715-3.643 0-.308-.051-.602-.126-.887l5.34-3.492c.62.457 1.381.736 2.214.736s1.595-.279 2.215-.736l5.339 3.492c-.075.285-.125.58-.125.887C34.286 59.365 35.952 61 38 61s3.714-1.635 3.714-3.643c0-.418-.086-.813-.219-1.187l6.935-5.442a3.728 3.728 0 0 0 4.008-.055l4.319 3.176c-.11.344-.186.702-.186 1.08 0 2.008 1.667 3.642 3.715 3.642 2.047 0 3.714-1.634 3.714-3.642 0-2.009-1.667-3.643-3.714-3.643zM15.714 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm11.143-7.285a1.229 1.229 0 0 1-1.238-1.215c0-.668.556-1.214 1.238-1.214.682 0 1.238.546 1.238 1.214 0 .67-.556 1.215-1.238 1.215zM38 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm12.381-9.714a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm9.905 7.286a1.229 1.229 0 0 1-1.238-1.214c0-.67.556-1.215 1.238-1.215a1.23 1.23 0 0 1 1.238 1.215c0 .668-.556 1.214-1.238 1.214z"></path><path fill="#E8F4FF" d="M32 27H12v17h20z"></path><path fill="#068DFE" d="M17 32h10v2H17zm0 5h10v2H17zm18 2h2v2h-2z"></path><path fill="#E8F4FF" d="M39 39h24v2H39z"></path></g></svg><h1 class="css-lr10t7">Sign up to get full access to all the tool integrations<span class="css-4yzqpf">Make informed product decisions</span></h1></div><button data-testid="signupFullAccessButton" class="css-st9eg3">Sign up now</button></div></div><div class="css-5k0ecd"><div id="posts" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div class="css-fa6ece"><h3 id="blog-posts">Blog Posts</h3></div><div class="css-vbfwyr"><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/pinterest/efficient-resource-management-at-pinterests-batch-processing-platform">Efficient Resource Management at Pinterest’s Batch Processing ...</a></div></div><div class="css-m2gwm">Oct 27 2021 at 4:26PM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>Pinterest</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Amazon S3" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/25/amazon-s3.png" alt="Amazon S3" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Amazon EC2" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/18/amazon-ec2.png" alt="Amazon EC2" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Kafka" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1063/kazUJooF_400x400.jpg" alt="Kafka" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->7</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>5</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>1367</span></div></div></div></div><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/pinterest/empowering-pinterest-data-scientists-and-machine-learning-engineers-with-pyspark">Empowering Pinterest Data Scientists and Machine Learning Engi...</a></div></div><div class="css-m2gwm">Jul 9 2020 at 2:41PM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>Pinterest</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Python" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/993/pUBY5pVj.png" alt="Python" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Kubernetes" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1885/21_d3cvM.png" alt="Kubernetes" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Amazon S3" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/25/amazon-s3.png" alt="Amazon S3" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->11</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>5</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>6222</span></div></div></div></div><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/stream/how-stream-built-a-modern-rss-reader-with-javascript">How Stream Built a Modern RSS Reader With JavaScript</a></div></div><div class="css-m2gwm">Jun 19 2018 at 3:02AM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>Stream</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="JavaScript" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1209/javascript.jpeg" alt="JavaScript" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="GitHub" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg" alt="GitHub" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Node.js" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1011/n1JRsFeB_400x400.png" alt="Node.js" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->29</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>14</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>12553</span></div></div></div></div></div><div class="css-1i8b05s"></div></div><div id="alternatives" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div style="border-bottom:none" class="css-5k0ecd"><div class="css-4d5oui"><div class="css-ptavxb">What are some alternatives to pnpm and Yarn?</div><div class="css-10pc7td"><div class="css-1ukyolz"><div class="css-1uackhz">npm</div></div><div class="css-1ofkegx">npm is the command-line interface to the npm ecosystem. It is battle-tested, surprisingly flexible, and used by hundreds of thousands of JavaScript developers every day.</div><div class="css-1ukyolz"><div class="css-1uackhz">Lerna</div></div><div class="css-1ofkegx">It is a popular and widely used package written in JavaScript. It optimizes the workflow around managing multi-package repositories with git and npm.</div><div class="css-1ukyolz"><div class="css-1uackhz">Composer</div></div><div class="css-1ofkegx">It is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you.</div><div class="css-1ukyolz"><div class="css-1uackhz">Homebrew</div></div><div class="css-1ofkegx">Homebrew installs the stuff you need that Apple didn’t. Homebrew installs packages to their own directory and then symlinks their files into /usr/local.</div><div class="css-1ukyolz"><div class="css-1uackhz">NuGet</div></div><div class="css-1ofkegx">A free and open-source package manager designed for the Microsoft development platform. It is also distributed as a Visual Studio extension.</div></div><a data-testid="seeAllAlternativesLink" href="/yarn/alternatives" class="css-1xexurq">See all alternatives</a></div></div></div><aside class="css-1cqgl9p"><div class="css-p223ph"><div style="position:sticky;top:23%"><div class="css-81jah4"></div><div class="css-cn7d1w"><svg class="css-1fj3l7d" xmlns="http://www.w3.org/2000/svg" width="123" height="70" viewBox="0 0 123 70"><g fill="none" fill-rule="evenodd"><g fill="#008FF9" stroke="#008FF9" opacity=".74"><g stroke-width="2.207" opacity=".413"><path d="M62.27 24.009c6.068 0 11.004-4.937 11.004-11.005C73.274 6.937 68.338 2 62.27 2S51.266 6.937 51.266 13.004c0 6.068 4.936 11.005 11.004 11.005zm0-19.368c4.612 0 8.363 3.752 8.363 8.363 0 4.612-3.751 8.364-8.363 8.364-4.611 0-8.363-3.752-8.363-8.364 0-4.611 3.752-8.363 8.363-8.363zm-.579 24.58c-11.177 0-20.271 9.28-20.271 20.689 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-9.951 7.932-18.047 17.683-18.047 9.75 0 17.683 8.096 17.683 18.047 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-11.407-9.093-20.688-20.271-20.688z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M33.506 27.484c-5.323 0-9.653-4.33-9.653-9.653s4.33-9.653 9.653-9.653c5.322 0 9.653 4.33 9.653 9.653 0 5.322-4.33 9.653-9.653 9.653zm0-16.99c-4.045 0-7.336 3.292-7.336 7.337s3.29 7.336 7.336 7.336c4.045 0 7.336-3.291 7.336-7.336s-3.291-7.336-7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M42.973 33.722c9.802 2.263 15.898 12.243 13.588 22.246a1.176 1.176 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.015-8.726-3.303-17.432-11.853-19.406-8.55-1.974-17.146 3.52-19.161 12.246a1.177 1.177 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.31-10.003 12.162-16.3 21.964-14.038z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M90.263 27.484c5.323 0 9.653-4.33 9.653-9.653s-4.33-9.653-9.653-9.653c-5.322 0-9.653 4.33-9.653 9.653 0 5.322 4.33 9.653 9.653 9.653zm0-16.99c4.045 0 7.337 3.292 7.337 7.337s-3.292 7.336-7.337 7.336-7.336-3.291-7.336-7.336 3.291-7.336 7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M80.217 33.722c-9.802 2.263-15.898 12.243-13.588 22.246.147.64.775 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.015-8.726 3.303-17.432 11.853-19.406 8.55-1.974 17.146 3.52 19.161 12.246.148.64.776 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.31-10.003-12.162-16.3-21.964-14.038z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".184"><path d="M111.547 31.915a7.05 7.05 0 0 0 7.042-7.042c0-3.884-3.159-7.043-7.042-7.043-3.885 0-7.043 3.16-7.043 7.043s3.16 7.042 7.043 7.042zm0-12.395a5.358 5.358 0 0 1 5.352 5.353c0 2.951-2.4 5.352-5.352 5.352a5.358 5.358 0 0 1-5.353-5.352 5.359 5.359 0 0 1 5.353-5.353zm-6.725 21.023a.815.815 0 0 1-1.119.139.75.75 0 0 1-.144-1.08c2.39-2.98 6.001-4.69 9.906-4.69 2.508 0 4.927.712 6.997 2.06a.753.753 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.152 11.152 0 0 0-6.103-1.796c-3.406 0-6.557 1.492-8.642 4.092z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".177"><path d="M10.871 31.915a7.05 7.05 0 0 1-7.042-7.042c0-3.884 3.159-7.043 7.042-7.043 3.885 0 7.043 3.16 7.043 7.043s-3.16 7.042-7.043 7.042zm0-12.395a5.358 5.358 0 0 0-5.352 5.353c0 2.951 2.4 5.352 5.352 5.352 2.952 0 5.353-2.4 5.353-5.352a5.359 5.359 0 0 0-5.353-5.353zM3.036 40.543a.818.818 0 0 1-1.121.139.751.751 0 0 1-.144-1.08c2.39-2.98 6.002-4.69 9.907-4.69 2.507 0 4.927.712 6.996 2.06a.751.751 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.147 11.147 0 0 0-6.102-1.797c-3.407 0-6.557 1.492-8.643 4.092z" opacity=".502"></path></g></g><g><path fill="#008FF9" stroke="#008FF9" stroke-width=".842" d="M61.047 16.51c-6.44 3.802-13.035 6.6-20.164 8.553a2.453 2.453 0 0 0-1.302.88 2.452 2.452 0 0 0-.504 1.487v9.447c0 11.603 5.26 19.355 10.029 24.121.827.81 1.69 1.57 2.569 2.274 2.796 2.241 5.735 3.912 7.985 4.731 1.047.382 1.953.58 2.636.58.684 0 1.59-.198 2.637-.58 2.19-.797 5.033-2.401 7.762-4.554a34.855 34.855 0 0 0 2.813-2.472c4.57-4.487 10.007-12.303 10.007-24.1V27.43c0-.603-.16-1.098-.46-1.493-.297-.388-.736-.684-1.346-.874-6.932-1.899-13.906-4.857-20.166-8.553a2.454 2.454 0 0 0-2.495 0z"></path><path fill="#FFF" stroke="#008FF9" stroke-width=".605" d="M62.079 18.257c-6.664 3.935-13.492 6.82-20.974 8.945v9.675c0 10.19 4.31 17.217 8.465 21.7V43.259c0-.483.197-.922.515-1.24a1.75 1.75 0 0 1 1.24-.514h2.21v-1.447c0-2.426.97-4.627 2.538-6.222 1.566-1.591 3.727-2.579 6.111-2.579a8.55 8.55 0 0 1 6.112 2.58 8.863 8.863 0 0 1 2.539 6.227v1.441h2.43c.484 0 .923.197 1.24.515.318.317.515.756.515 1.24v15.31c4.065-4.333 8.465-11.397 8.465-21.694l-.092-9.795-1.11-.31c-6.809-1.951-13.627-4.887-20.204-8.515zm.105 15.133c-1.81 0-3.451.748-4.64 1.956a6.7 6.7 0 0 0-1.921 4.71v1.448h13.123v-1.447a6.697 6.697 0 0 0-1.922-4.711 6.491 6.491 0 0 0-4.64-1.956z"></path><path fill="#FFF" d="M83.182 36.877c0 9.758-3.988 16.585-7.86 20.916V43.258a2.059 2.059 0 0 0-2.056-2.056h-2.129v-1.139c0-5.021-4.014-9.11-8.953-9.11-4.938 0-8.952 4.089-8.952 9.104v1.145h-1.908a2.059 2.059 0 0 0-2.056 2.056v14.535a4.32 4.32 0 0 1-.11-.122c-3.837-4.336-7.75-11.129-7.75-20.794V27.43c0-.055.037-.103.09-.118 7.331-2.009 14.114-4.885 20.735-8.794.02-.012.04-.017.062-.017s.043.005.062.017c6.437 3.8 13.607 6.84 20.735 8.794.053.015.09.063.09.118v9.447z"></path><path fill="#FFF" d="M67.197 57.374c-.6 0-1.1-.413-1.212-.96 0 0-.032-.23 0-.463.112-.546.613-.96 1.211-.96.681 0 1.235.535 1.235 1.192 0 .657-.554 1.191-1.235 1.191m-10.759-4.22c-.68 0-1.234-.534-1.234-1.19 0-.658.553-1.192 1.234-1.192.681 0 1.235.534 1.235 1.191s-.554 1.192-1.235 1.192m9.539-5.687v-.008c.112-.546.612-.96 1.21-.96.681 0 1.235.534 1.235 1.192 0 .657-.554 1.191-1.234 1.191-.6 0-1.1-.413-1.211-.96-.028-.21 0-.455 0-.455m1.22 6.446c-1.07 0-1.972.69-2.256 1.635h-1.393l-2.175-3.612v-.006l2.172-3.605h1.386c.285.944 1.187 1.634 2.257 1.634 1.297 0 2.35-1.016 2.35-2.268 0-1.253-1.053-2.269-2.35-2.269-1.07 0-1.972.69-2.257 1.634h-2.113l-.021-.012-2.56 4.252-.02.032h-1.521c-.285-.944-1.187-1.634-2.257-1.634-1.297 0-2.35 1.016-2.35 2.268 0 1.253 1.053 2.268 2.35 2.268 1.07 0 1.972-.69 2.257-1.634h1.555l2.546 4.227.011-.007h2.134c.284.944 1.187 1.634 2.256 1.634 1.298 0 2.35-1.016 2.35-2.268 0-1.253-1.052-2.269-2.35-2.269m1.246-12.712H55.925v-1.145c0-3.511 2.806-6.364 6.26-6.364 3.452 0 6.258 2.853 6.258 6.364v1.145z"></path></g></g></svg><div class="css-i272tr">See all the technologies you’re using across your company.<!-- --> </div><a href="/manage-companies/enterprise" class="css-56ijgy">Sign up for StackShare Enterprise</a><a href="/enterprise" class="css-1l7t0dr">Learn More</a></div></div></div></aside></div></main><div class="css-69zjs9"><div class="css-8a04gk"><div class="css-1m38k02"><h2 class="css-162qu2y">Related Comparisons</h2><a href="/stackups/npm-vs-yarn" title="Yarn vs npm" class="css-p797gu">Yarn vs npm</a><a href="/stackups/bower-vs-npm-vs-yarn" title="Bower vs Yarn vs npm" class="css-p797gu">Bower vs Yarn vs npm</a><a href="/stackups/bower-vs-yarn" title="Bower vs Yarn" class="css-p797gu">Bower vs Yarn</a><a href="/stackups/browserify-vs-yarn" title="Browserify vs Yarn" class="css-p797gu">Browserify vs Yarn</a><a href="/stackups/requirejs-vs-yarn" title="RequireJS vs Yarn" class="css-p797gu">RequireJS vs Yarn</a></div><div class="css-1m38k02"><h2 class="css-162qu2y">Trending Comparisons</h2><a href="/stackups/django-vs-laravel-vs-nodejs" title="Django vs Laravel vs Node.js" class="css-p797gu">Django vs Laravel vs Node.js</a><a href="/stackups/bootstrap-vs-foundation-vs-material-ui" title="Bootstrap vs Foundation vs Material-UI" class="css-p797gu">Bootstrap vs Foundation vs Material-UI</a><a href="/stackups/nodejs-vs-spring-boot" title="Node.js vs Spring Boot" class="css-p797gu">Node.js vs Spring Boot</a><a href="/stackups/flyway-vs-liquibase" title="Flyway vs Liquibase" class="css-p797gu">Flyway vs Liquibase</a><a href="/stackups/aws-codecommit-vs-bitbucket-vs-github" title="AWS CodeCommit vs Bitbucket vs GitHub" class="css-p797gu">AWS CodeCommit vs Bitbucket vs GitHub</a></div><div class="css-1m38k02"><h2 class="css-162qu2y">Top Comparisons</h2><a href="/stackups/bitbucket-vs-github-vs-gitlab" title="Bitbucket vs GitHub vs GitLab" class="css-p797gu">Bitbucket vs GitHub vs GitLab</a><a href="/stackups/bootstrap-vs-materialize" title="Bootstrap vs Materialize" class="css-p797gu">Bootstrap vs Materialize</a><a href="/stackups/hipchat-vs-mattermost-vs-slack" title="HipChat vs Mattermost vs Slack" class="css-p797gu">HipChat vs Mattermost vs Slack</a><a href="/stackups/postman-vs-swagger-ui" title="Postman vs Swagger UI" class="css-p797gu">Postman vs Swagger UI</a></div></div></div></div></div> <script> renderComponent('Stackup','Stackup-react-component-67029e5a-60d7-4563-88ab-a88bbba67d37','Stackup-apollo-state-67029e5a-60d7-4563-88ab-a88bbba67d37','Stackup-glamor-67029e5a-60d7-4563-88ab-a88bbba67d37', 'apollo','{"route":"/stackups/pnpm-vs-yarn","userId":null,"featureFlags":{}}'); </script>
<script type="application/json" id="Footer-apollo-state-b887cc69-1029-4251-be72-f428c4a31686">{}</script> <!-- glamorIds: 21 --> <script type="application/json" id="Footer-glamor-b887cc69-1029-4251-be72-f428c4a31686">["1htug8r","1yodi52","iepywa","x5hg3h","u0iaox","9ilv8v","ts0y2j","cs546h","1fco1ts","11a2nsi","1npm75a","1gn11bn","1y302zr","11gxadc","1iqd2ec","lneilx","de1dx1","1h53588","12k57td","j1o656","zr18wh"]</script> <style>@-webkit-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-moz-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-o-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-webkit-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-moz-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-o-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-webkit-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-moz-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-o-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-webkit-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-moz-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-o-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-webkit-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-moz-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-o-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-webkit-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-moz-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-o-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}.css-ts0y2j,[data-css-ts0y2j]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.4;letter-spacing:normal;-webkit-font-smoothing:antialiased;background:#333;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;padding:50px 0 80px;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}@media only screen and (max-width: 768px){.css-ts0y2j,[data-css-ts0y2j]{padding:0 0 40px;}}.css-cs546h,[data-css-cs546h]{max-width:1220px;}@media only screen and (max-width: 992px){.css-cs546h,[data-css-cs546h]{width:700px;}}@media only screen and (min-width: 993px){.css-cs546h,[data-css-cs546h]{width:955px;}}@media only screen and (min-width: 1200px){.css-cs546h,[data-css-cs546h]{width:1220px;}}.css-1fco1ts,[data-css-1fco1ts]{display:grid;grid-template-columns:repeat(4, 1fr);justify-items:center;column-gap:3%;-ms-grid-template-columns:repeat(4, 1fr);-webkit-column-gap:3%;-moz-column-gap:3%;}@media only screen and (max-width: 768px){.css-1fco1ts,[data-css-1fco1ts]{grid-template-columns:1fr;text-align:center;-ms-grid-template-columns:1fr;}}.css-11a2nsi,[data-css-11a2nsi]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;text-align:left;width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;}.css-1npm75a,[data-css-1npm75a]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;color:#fff;font-size:14px;line-height:1.7;letter-spacing:0.3px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1npm75a a,[data-css-1npm75a] a{color:#fff;text-decoration:none;}.css-1npm75a a:visited,[data-css-1npm75a] a:visited{color:#fff;}.css-1npm75a a:hover,[data-css-1npm75a] a:hover{color:#068dfe;}.css-1npm75a a:hover span,[data-css-1npm75a] a:hover span{color:#fff;}.css-1npm75a a:active span,[data-css-1npm75a] a:active span{color:#fff;}@media only screen and (max-width: 768px){.css-1npm75a,[data-css-1npm75a]{align-items:center;width:95%;font-size:16px;line-height:2;-webkit-box-align:center;-webkit-align-items:center;}}.css-1gn11bn,[data-css-1gn11bn]{color:#fff;font-weight:600;font-size:20px;letter-spacing:0.38px;}@media only screen and (max-width: 768px){.css-1gn11bn,[data-css-1gn11bn]{margin-top:36px;margin-bottom:24px;}}.css-1y302zr,[data-css-1y302zr]{position:relative;}@media only screen and (min-width: 769px){.css-1y302zr,[data-css-1y302zr]{margin-right:auto;}}.css-11gxadc,[data-css-11gxadc]{padding:0;margin:8px 0;}.css-11gxadc li,[data-css-11gxadc] li{display:inline-block;margin:0 5px;}@media only screen and (min-width: 769px){.css-11gxadc li:first-child,[data-css-11gxadc] li:first-child{margin-left:0;}}@media only screen and (max-width: 768px){.css-11gxadc,[data-css-11gxadc]{margin:0 0 80px;}}.css-1iqd2ec svg:hover path,[data-css-1iqd2ec] svg:hover path{fill:#939393;}.css-lneilx,[data-css-lneilx]{margin-top:15px;line-height:100%;}.css-lneilx svg,[data-css-lneilx] svg{max-width:135px;}.css-lneilx svg g,[data-css-lneilx] svg g{fill:#fff;}@media only screen and (max-width: 768px){.css-lneilx,[data-css-lneilx]{margin-top:0;}}@media only screen and (max-width: 480px){.css-lneilx,[data-css-lneilx]{margin-top:0;}}.css-de1dx1,[data-css-de1dx1]{color:#fff;}.css-de1dx1 a,[data-css-de1dx1] a, .css-de1dx1 span, [data-css-de1dx1] span{display:inline-block;margin-right:8px;font-size:13px;letter-spacing:0.24px;}.css-de1dx1 a:last-child,[data-css-de1dx1] a:last-child{margin-right:0;}@media only screen and (max-width: 768px){.css-de1dx1,[data-css-de1dx1]{line-height:1.5;margin-top:14px;margin-bottom:11px;}}.css-1h53588,[data-css-1h53588]{margin:18px 0;}@media only screen and (max-width: 992px){.css-1h53588,[data-css-1h53588]{text-align:center;}}@media only screen and (max-width: 480px){.css-1h53588,[data-css-1h53588]{text-align:center;}}.css-12k57td,[data-css-12k57td]{font-family:Cerebri Sans Pro;margin-top:0;font-style:normal;font-weight:400;font-size:14px;line-height:25px;letter-spacing:0.375px;color:#fff;}.css-j1o656,[data-css-j1o656]{width:53px;height:53px;}.css-zr18wh,[data-css-zr18wh]{color:#c2c2c2;font-size:10px;margin-top:5px;}.css-zr18wh div,[data-css-zr18wh] div{white-space:nowrap;}@media only screen and (max-width: 768px){.css-zr18wh,[data-css-zr18wh]{font-size:13px;line-height:1.5;text-align:center;}}</style> <div id="Footer-react-component-b887cc69-1029-4251-be72-f428c4a31686" data-ssr="true" ><footer class="css-ts0y2j"><div class="css-cs546h"><div class="css-1fco1ts"><div class="css-11a2nsi"><div class="css-1npm75a"><h3 class="css-1gn11bn">Tools &amp; Services</h3><a href="/stackups/trending" title="Compare Tools">Compare Tools</a><a href="/search" title="Search Tools &amp; Services">Search</a><a href="/alternatives" title="Browse Tools &amp; Services">Browse Tool Alternatives</a><a href="/categories" title="Technology Tools &amp; Services">Browse Tool Categories</a><a href="/submit" title="Submit a Tool">Submit A Tool</a><a href="/admin/approval-tool" title="Approve Tools">Approve Tools</a></div></div><div class="css-11a2nsi"><div class="css-1npm75a"><h3 class="css-1gn11bn">Company</h3><a href="/featured-posts" title="Featured Posts">Blog</a><a href="/api" title="API">API</a><a href="/jobs" title="Jobs">Job Search</a><a href="/careers" title="Careers at StackShare" class="css-1y302zr">Careers</a><a href="/stackshare" title="Our Stack">Our Stack</a><a href="/vendors" title="Advertise With Us">Advertise With Us</a><a href="mailto:team@stackshare.io" title="Contact Us">Contact Us</a></div></div><div class="css-11a2nsi"><div class="css-1npm75a"><h3 class="css-1gn11bn">Follow Us</h3><ul class="css-11gxadc"><li><a href="https://twitter.com/stackshareio" target="_blank" rel="noreferrer noopener nofollow" class="css-1iqd2ec"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFF" fill-rule="evenodd" d="M3.6 0h16.8A3.6 3.6 0 0 1 24 3.6v16.8a3.6 3.6 0 0 1-3.6 3.6H3.6A3.6 3.6 0 0 1 0 20.4V3.6A3.6 3.6 0 0 1 3.6 0zm14.29 9.964c.548-.389 1.005-.891 1.393-1.44a6.285 6.285 0 0 1-1.621.435c.594-.343 1.005-.891 1.21-1.553a5.867 5.867 0 0 1-1.758.685A2.759 2.759 0 0 0 15.08 7.2a2.788 2.788 0 0 0-2.787 2.81c0 .205.023.433.069.639A7.976 7.976 0 0 1 6.56 7.702a3.037 3.037 0 0 0-.365 1.417c0 .982.48 1.827 1.233 2.33-.456 0-.89-.138-1.256-.343v.022c0 1.37.96 2.49 2.238 2.764-.228.069-.48.092-.73.092-.183 0-.366-.023-.526-.046.343 1.119 1.394 1.873 2.604 1.896-.96.753-2.147 1.279-3.472 1.279a6 6 0 0 1-.662-.046c1.233.8 2.718 1.233 4.294 1.233 5.162 0 7.971-4.27 7.971-7.97v-.366z"></path></svg></a></li><li><a href="https://facebook.com/stackshareio" target="_blank" rel="noreferrer noopener nofollow" class="css-1iqd2ec"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFF" fill-rule="evenodd" d="M16.478 24v-8h2.896l.201-3.069h-3.097v-2.237c0-.86.172-1.405 1.262-1.405h1.692l.143-2.925s-.86-.172-2.351-.172c-3.04 0-4.36 1.835-4.36 3.9v2.81H10.8V16h2.065v8H3.6A3.6 3.6 0 0 1 0 20.4V3.6A3.6 3.6 0 0 1 3.6 0h16.8A3.6 3.6 0 0 1 24 3.6v16.8a3.6 3.6 0 0 1-3.6 3.6h-3.922z"></path></svg></a></li><li><a href="https://www.linkedin.com/company/stackshare" target="_blank" rel="noreferrer noopener nofollow" class="css-1iqd2ec"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFF" fill-rule="evenodd" d="M3.6 0h16.8A3.6 3.6 0 0 1 24 3.6v16.8a3.6 3.6 0 0 1-3.6 3.6H3.6A3.6 3.6 0 0 1 0 20.4V3.6A3.6 3.6 0 0 1 3.6 0zm5.521 17.16V9.378H6.374v7.782h2.747zM7.748 8.43c1.119 0 1.83-.807 1.83-1.815C9.554 5.578 8.868 4.8 7.749 4.8c-1.094 0-1.831.778-1.831 1.815 0 1.008.712 1.815 1.805 1.815h.026zm11.444 8.73v-4.12c0-2.518-1.246-4.12-3.205-4.12-1.119 0-1.932.661-2.288 1.653l-.102-1.195h-2.721c.025.305.076 1.83.076 1.83v5.952h2.747v-4.12c0-1.12.508-1.831 1.347-1.831.84 0 1.4.432 1.4 1.83v4.12h2.746z"></path></svg></a></li><li><a href="https://angel.co/stackshare" target="_blank" rel="noreferrer noopener nofollow" class="css-1iqd2ec"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFF" fill-rule="evenodd" d="M3.6 0h16.8A3.6 3.6 0 0 1 24 3.6v16.8a3.6 3.6 0 0 1-3.6 3.6H3.6A3.6 3.6 0 0 1 0 20.4V3.6A3.6 3.6 0 0 1 3.6 0zm4.684 14.42c.365.493.708.877 1.029 1.153.322.276.579.413.769.413.14 0 .268-.064.385-.194a.624.624 0 0 0 .173-.42c0-.16-.114-.528-.341-1.11-.227-.58-.512-1.15-.849-1.71-.249-.418-.492-.733-.732-.947-.24-.214-.466-.319-.68-.319-.174 0-.366.111-.577.33-.212.223-.317.43-.317.622 0 .2.102.501.309.903.207.4.484.827.83 1.28zm6.062-4.06a89.757 89.757 0 0 0 1.296-3.767c.31-.99.465-1.598.465-1.824 0-.242-.053-.43-.155-.563h-.001a.51.51 0 0 0-.429-.2c-.23 0-.468.194-.707.582-.24.389-.505 1.014-.793 1.875l-1.238 3.622 1.562.275zm-4.45-.445a.982.982 0 0 1 .371-.058c.05 0 .149.005.298.013.147.01.392.03.73.063L9.958 6.022c-.347-.993-.615-1.644-.806-1.949-.19-.303-.397-.456-.619-.456a.513.513 0 0 0-.422.2c-.107.133-.16.313-.16.54 0 .384.144 1.052.433 2.004.29.953.724 2.202 1.303 3.749a.41.41 0 0 1 .21-.195zm6.22 2.129a1.006 1.006 0 0 0-.245-.293c-.338-.285-.998-.54-1.979-.765a13.608 13.608 0 0 0-3.068-.338c-.296 0-.508.05-.632.15-.124.1-.186.272-.186.516 0 .567.314.98.943 1.233.627.255 1.643.382 3.049.382h.508c.116 0 .21.044.279.133.07.088.118.219.142.394-.14.134-.43.287-.866.456-.438.172-.774.341-1.005.508a4.53 4.53 0 0 0-1.196 1.31 3.99 3.99 0 0 0-.198.374c-.04.09-.07.176-.102.263-.012.034-.029.067-.04.1-.018.063-.03.125-.044.188-.013.056-.032.11-.04.166-.006.039-.006.076-.01.114-.008.076-.019.154-.019.228v.001c0 .277.063.609.192.997.128.388.192.629.192.72v.086l-.025.112c-.364-.023-.65-.239-.863-.644-.21-.406-.315-.947-.315-1.622v-.112a.719.719 0 0 1-.192.125.553.553 0 0 1-.205.037c-.074 0-.144-.006-.212-.019a2.132 2.132 0 0 1-.222-.058v.001c.024.094.043.182.056.27a1.05 1.05 0 0 1-.34 1.003 1.22 1.22 0 0 1-.856.331c-.52 0-1.05-.256-1.587-.77-.537-.515-.806-1.017-.806-1.51 0-.091.01-.172.032-.243a.406.406 0 0 1 .104-.182c.115.142.278.35.483.627.545.76 1.05 1.14 1.512 1.14.157 0 .297-.05.422-.149.123-.1.185-.206.185-.313v-.001c0-.127-.083-.334-.248-.629a8.366 8.366 0 0 0-.681-.99c-.33-.425-.606-.736-.826-.933-.217-.196-.394-.295-.525-.295-.29 0-.557.157-.8.47a1.756 1.756 0 0 0-.366 1.11c0 .344.086.725.254 1.147.168.422.416.846.738 1.271a4.937 4.937 0 0 0 1.816 1.524c.723.355 1.522.532 2.4.532 1.611 0 2.96-.607 4.046-1.823 1.088-1.216 1.632-2.739 1.632-4.568 0-.56-.04-1.005-.124-1.337a1.67 1.67 0 0 0-.162-.425zm-4.733 2.915a6.14 6.14 0 0 1 .626-.682c.218-.206.449-.386.689-.545a8.167 8.167 0 0 1-1.01-.113 5.067 5.067 0 0 1-.912-.252c.133.268.25.535.354.802.103.268.188.532.253.79z"></path></svg></a></li></ul></div></div><div class="css-11a2nsi"><div class="css-1npm75a"><a href="/" class="css-lneilx"><svg width="203" height="31" viewBox="0 0 812 124" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><g id="Layer1" fill-rule="nonzero"><path d="M221.086 85.794c0 7.342-2.55 12.933-7.651 16.775-5.101 3.842-12.731 5.762-22.889 5.762-5.208 0-9.647-.352-13.318-1.056-3.671-.704-7.107-1.739-10.308-3.105V88.035c3.628 1.707 7.715 3.137 12.261 4.29 4.546 1.152 8.547 1.728 12.005 1.728 7.085 0 10.628-2.048 10.628-6.146 0-1.537-.469-2.785-1.408-3.746-.939-.96-2.561-2.048-4.866-3.265-2.305-1.216-5.379-2.636-9.22-4.258-5.506-2.305-9.551-4.439-12.133-6.402-2.583-1.964-4.461-4.215-5.635-6.755-1.173-2.54-1.76-5.666-1.76-9.38 0-6.36 2.465-11.279 7.395-14.758 4.93-3.479 11.919-5.218 20.968-5.218 8.623 0 17.01 1.878 25.163 5.634l-5.891 14.086c-3.585-1.537-6.936-2.796-10.052-3.778a31.589 31.589 0 0 0-9.54-1.472c-5.762 0-8.643 1.558-8.643 4.674 0 1.75.928 3.265 2.785 4.546 1.857 1.28 5.922 3.18 12.197 5.698 5.591 2.262 9.689 4.375 12.293 6.339 2.604 1.963 4.524 4.225 5.762 6.786 1.238 2.561 1.857 5.613 1.857 9.156zM259.924 92.773c3.415 0 7.513-.747 12.293-2.241v14.534c-4.866 2.177-10.841 3.265-17.927 3.265-7.811 0-13.499-1.974-17.063-5.922-3.564-3.948-5.346-9.871-5.346-17.767V50.131h-9.348v-8.259l10.756-6.531 5.635-15.11h12.485v15.238h20.04v14.662h-20.04v34.511c0 2.774.779 4.823 2.337 6.146 1.558 1.323 3.617 1.985 6.178 1.985zM325.59 107.051l-3.778-9.732h-.512c-3.287 4.14-6.669 7.011-10.148 8.611-3.479 1.601-8.014 2.401-13.606 2.401-6.872 0-12.282-1.963-16.23-5.89-3.949-3.927-5.923-9.519-5.923-16.775 0-7.598 2.657-13.2 7.971-16.807 5.315-3.607 13.329-5.602 24.042-5.986l12.421-.384v-3.138c0-7.256-3.713-10.884-11.14-10.884-5.72 0-12.443 1.728-20.168 5.186l-6.467-13.19c8.238-4.311 17.372-6.466 27.403-6.466 9.604 0 16.967 2.091 22.089 6.274s7.683 10.543 7.683 19.08v47.7H325.59zm-5.763-33.166l-7.555.256c-5.677.171-9.902 1.195-12.677 3.074-2.774 1.878-4.162 4.738-4.162 8.579 0 5.506 3.159 8.259 9.476 8.259 4.525 0 8.142-1.301 10.853-3.905 2.71-2.604 4.065-6.061 4.065-10.372v-5.891zM381.843 108.331c-22.281 0-33.421-12.229-33.421-36.687 0-12.165 3.03-21.459 9.091-27.883 6.061-6.424 14.748-9.636 26.059-9.636 8.281 0 15.708 1.622 22.281 4.866l-5.762 15.11c-3.074-1.238-5.933-2.251-8.58-3.041-2.646-.79-5.293-1.185-7.939-1.185-10.159 0-15.238 7.214-15.238 21.641 0 14.001 5.079 21.001 15.238 21.001 3.756 0 7.235-.502 10.436-1.505 3.202-1.003 6.403-2.571 9.604-4.706v16.711c-3.158 2.006-6.349 3.394-9.572 4.162-3.222.768-7.288 1.152-12.197 1.152zM432.398 68.123l8.516-10.885 20.04-21.769h22.025l-28.428 31.053 30.157 40.529h-22.537l-20.617-29.004-8.387 6.723v22.281h-19.528V7.426h19.528V51.86l-1.025 16.263h.256z"></path><path d="M538.336 85.794c0 7.342-2.55 12.933-7.651 16.775-5.101 3.842-12.73 5.762-22.889 5.762-5.208 0-9.647-.352-13.318-1.056-3.671-.704-7.107-1.739-10.308-3.105V88.035c3.628 1.707 7.715 3.137 12.261 4.29 4.546 1.152 8.548 1.728 12.005 1.728 7.086 0 10.628-2.048 10.628-6.146 0-1.537-.469-2.785-1.408-3.746-.939-.96-2.561-2.048-4.866-3.265-2.305-1.216-5.378-2.636-9.22-4.258-5.506-2.305-9.551-4.439-12.133-6.402-2.582-1.964-4.46-4.215-5.634-6.755-1.174-2.54-1.761-5.666-1.761-9.38 0-6.36 2.465-11.279 7.395-14.758 4.93-3.479 11.92-5.218 20.969-5.218 8.622 0 17.009 1.878 25.162 5.634l-5.89 14.086c-3.586-1.537-6.937-2.796-10.053-3.778a31.589 31.589 0 0 0-9.54-1.472c-5.762 0-8.643 1.558-8.643 4.674 0 1.75.928 3.265 2.785 4.546 1.857 1.28 5.923 3.18 12.197 5.698 5.592 2.262 9.689 4.375 12.293 6.339 2.604 1.963 4.525 4.225 5.763 6.786 1.237 2.561 1.856 5.613 1.856 9.156zM613.093 107.051h-19.528V65.242c0-10.33-3.841-15.495-11.524-15.495-5.464 0-9.412 1.857-11.845 5.571-2.433 3.713-3.65 9.732-3.65 18.055v33.678h-19.528V7.426h19.528v20.296c0 1.58-.149 5.293-.448 11.141l-.448 5.762h1.024c4.354-7 11.269-10.5 20.745-10.5 8.409 0 14.79 2.262 19.144 6.787 4.353 4.524 6.53 11.012 6.53 19.464v46.675zM672.1 107.051l-3.778-9.732h-.512c-3.286 4.14-6.669 7.011-10.148 8.611-3.479 1.601-8.014 2.401-13.606 2.401-6.872 0-12.282-1.963-16.23-5.89-3.948-3.927-5.923-9.519-5.923-16.775 0-7.598 2.657-13.2 7.972-16.807 5.314-3.607 13.328-5.602 24.042-5.986l12.421-.384v-3.138c0-7.256-3.714-10.884-11.141-10.884-5.72 0-12.442 1.728-20.168 5.186l-6.467-13.19c8.238-4.311 17.373-6.466 27.403-6.466 9.604 0 16.967 2.091 22.089 6.274 5.123 4.183 7.684 10.543 7.684 19.08v47.7H672.1zm-5.762-33.166l-7.555.256c-5.677.171-9.903 1.195-12.678 3.074-2.774 1.878-4.161 4.738-4.161 8.579 0 5.506 3.158 8.259 9.475 8.259 4.525 0 8.142-1.301 10.853-3.905 2.71-2.604 4.066-6.061 4.066-10.372v-5.891zM739.238 34.125c2.646 0 4.845.192 6.595.576l-1.473 18.312c-1.579-.427-3.5-.641-5.762-.641-6.232 0-11.088 1.601-14.566 4.802-3.479 3.202-5.218 7.684-5.218 13.446v36.431h-19.528V35.469h14.79l2.881 12.037h.96c2.22-4.012 5.218-7.245 8.996-9.7 3.777-2.454 7.886-3.681 12.325-3.681zM779.293 48.019c-4.141 0-7.385 1.312-9.732 3.937-2.348 2.625-3.692 6.349-4.034 11.173h27.403c-.085-4.824-1.344-8.548-3.777-11.173s-5.72-3.937-9.86-3.937zm2.753 60.312c-11.525 0-20.531-3.18-27.019-9.54-6.488-6.36-9.732-15.366-9.732-27.019 0-11.994 2.998-21.267 8.996-27.819 5.997-6.552 14.288-9.828 24.874-9.828 10.116 0 17.991 2.881 23.625 8.643 5.635 5.763 8.452 13.723 8.452 23.882v9.476h-46.163c.213 5.549 1.857 9.882 4.93 12.997 3.073 3.116 7.384 4.674 12.933 4.674 4.311 0 8.388-.448 12.229-1.344 3.842-.897 7.854-2.326 12.037-4.29v15.11c-3.414 1.708-7.064 2.978-10.948 3.81-3.885.832-8.622 1.248-14.214 1.248z"></path></g><g fill="#008ff9"><path d="M101.98 83c-3.9 0-7.157 2.792-7.886 6.482-.212 1.564 0 3.123 0 3.123.73 3.687 3.986 6.477 7.885 6.477 4.434 0 8.042-3.605 8.042-8.04 0-4.434-3.608-8.042-8.042-8.042M32.041 54C27.607 54 24 57.606 24 62.041c0 4.433 3.607 8.041 8.041 8.041 4.435 0 8.042-3.608 8.042-8.041 0-4.435-3.607-8.041-8.042-8.041m69.924-12.918c4.435 0 8.042-3.608 8.042-8.041 0-4.435-3.607-8.041-8.042-8.041-3.898 0-7.155 2.791-7.885 6.48v.049s-.18 1.654 0 3.073c.73 3.689 3.987 6.48 7.885 6.48"></path><path d="M101.965 105.961c-6.965 0-12.841-4.655-14.692-11.022H73.376l-.076.043-16.575-28.517H46.592c-1.852 6.367-7.727 11.023-14.694 11.023-8.451 0-15.303-6.852-15.303-15.303 0-8.452 6.852-15.305 15.303-15.305 6.967 0 12.842 4.656 14.694 11.025h9.905l.128-.217L73.3 28.999l.141.083h13.768c1.852-6.369 7.727-11.025 14.692-11.025 8.453 0 15.305 6.853 15.305 15.305 0 8.451-6.852 15.304-15.305 15.304-6.965 0-12.84-4.656-14.692-11.025h-9.03l-14.14 24.326-.006.023.005.022L78.2 86.378h9.073c1.851-6.369 7.727-11.026 14.692-11.026 8.453 0 15.305 6.853 15.305 15.305s-6.852 15.304-15.305 15.304zM124.996 0H8.004C3.584 0 0 3.561 0 7.953v108.094C0 120.44 3.584 124 8.004 124h116.992c4.421 0 8.004-3.56 8.004-7.953V7.953C133 3.561 129.417 0 124.996 0z"></path></g></svg></a><div class="css-de1dx1"><a href="/terms">Terms</a><span>·</span><a href="/privacy">Privacy</a></div><div class="css-1h53588"><h3 class="css-12k57td">SOC 2 Type 2 Certified</h3><a href="http://www.aicpa.org/soc4so" rel="nofollow noreferrer noopener" target="_blank" title="SOC2 badge"><img src="https://img.stackshare.io/fe/SOC2.png" class="css-j1o656"/></a></div><div class="css-zr18wh"><div>Copyright © <!-- -->2022<!-- --> StackShare, Inc. </div><div>All rights reserved.</div></div><div class="css-de1dx1"><a href="/html-sitemaps/stackups/main.html">Sitemap</a></div></div></div></div></div></footer></div> <script> renderComponent('Footer','Footer-react-component-b887cc69-1029-4251-be72-f428c4a31686','Footer-apollo-state-b887cc69-1029-4251-be72-f428c4a31686','Footer-glamor-b887cc69-1029-4251-be72-f428c4a31686', 'apollo','{"isAdmin":null}'); </script>