CINXE.COM
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <link rel="stylesheet" href="https://static-production.npmjs.com/styles.c617df3efc3b584cc1d7.css" /> <title data-react-helmet="true">npm | Profile</title> <meta data-react-helmet="true" http-equiv="cleartype" content="on"/><meta data-react-helmet="true" name="apple-mobile-web-app-capable" content="yes"/><meta data-react-helmet="true" name="mobile-web-app-capable" content="yes"/><meta data-react-helmet="true" name="viewport" content="width=device-width,minimum-scale=1.0,initial-scale=1,user-scalable=yes"/><meta data-react-helmet="true" property="og:image" content="https://static-production.npmjs.com/338e4905a2684ca96e08c7780fc68412.png"/><meta data-react-helmet="true" name="msapplication-TileColor" content="#cb3837"/><meta data-react-helmet="true" name="msapplication-TileImage" content="https://static-production.npmjs.com/7a7ffabbd910fc60161bc04f2cee4160.png"/><meta data-react-helmet="true" name="msapplication-config" content="https://static-production.npmjs.com/668aac888e52ae13cac9cfd71fabd31f.xml"/><meta data-react-helmet="true" name="theme-color" content="#cb3837"/> <link data-react-helmet="true" href="https://static-production.npmjs.com/osd.xml" rel="search" title="npm package search" type="application/opensearchdescription+xml"/><link data-react-helmet="true" rel="apple-touch-icon" sizes="120x120" href="https://static-production.npmjs.com/58a19602036db1daee0d7863c94673a4.png"/><link data-react-helmet="true" rel="apple-touch-icon" sizes="144x144" href="https://static-production.npmjs.com/7a7ffabbd910fc60161bc04f2cee4160.png"/><link data-react-helmet="true" rel="apple-touch-icon" sizes="152x152" href="https://static-production.npmjs.com/34110fd7686e2c90a487ca98e7336e99.png"/><link data-react-helmet="true" rel="apple-touch-icon" sizes="180x180" href="https://static-production.npmjs.com/3dc95981de4241b35cd55fe126ab6b2c.png"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/b0f1a8318363185cc2ea6a40ac23eeb2.png" sizes="32x32"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/1996fcfdf7ca81ea795f67f093d7f449.png" sizes="230x230"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/f1786e9b7cba9753ca7b9c40e8b98f67.png" sizes="96x96"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/5f6e93af5bf0f5dcdd1eecdac99f51ee.png" sizes="192x192"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/c426a1116301d1fd178c51522484127a.png" sizes="228x228"/><link data-react-helmet="true" rel="icon" type="image/png" href="https://static-production.npmjs.com/da3ab40fb0861d15c83854c29f5f2962.png" sizes="16x16"/> </head> <body> <div id="app"><div class="_452c3ec4 d68c66a8"><div class="cf325dbd list ma0 pa0 tr z-999"><div class="c746cc21 list ma0 pa0 tr z-999"></div></div><div class="flex flex-column vh-100"><header class="_755f5b0f bg-white z-2 bb b--black-20"><div></div><div class="e7070742 pv3-ns ph1-ns bg-white"><div id="header" class="bbefbfcc">skip to:<a aria-label="skip to content" class="d6d0dbcf" href="#main">content</a><a aria-label="skip to package search" class="d6d0dbcf" href="#search">package search</a><a aria-label="skip to sign in" class="d6d0dbcf" href="#signin">sign in</a></div><div class="ef7c6e62 center mw9 border-box ph4-ns ph3 flex items-center"><span class="_0edb515f pr3 dn dib-ns link lh-title dim b--white-30">❤</span><nav class="_4a5f2a79 db w-100 w-auto-ns truncate" aria-label="Product Navigation"><ul id="main-menu" class="list pl0" role="menu" aria-label="Nav Menu"><li role="none" class="dib"><a href="/products/pro" role="menuitem" class="c6c55db4 no-underline f6-ns f7 fw5 dim pr2 pl2" id="nav-pro-link">Pro</a></li><li role="none"><a href="/products/teams" role="menuitem" class="c6c55db4 no-underline f6-ns f7 fw5 dim pr2 pl2" id="nav-teams-link">Teams</a></li><li role="none" class="dib"><a href="/products" role="menuitem" class="c6c55db4 no-underline f6-ns f7 fw5 dim pr2 pl2" id="nav-pricing-link">Pricing</a></li><li role="none" class="dib"><a href="https://docs.npmjs.com" role="menuitem" class="c6c55db4 no-underline f6-ns f7 fw5 dim pr2 pl2" id="nav-docs-link">Documentation</a></li></ul></nav></div></div><div class="_4ea0e50d bt b--black-10"><div class="c5b9953b center mw9 flex flex-wrap ph4-ns border-box"><span class="_657f443d">npm</span><div class="af43375d mt3 db mr4-ns pb3 pb0-ns flex-auto 2-ns ph3 ph0-ns"><a href="/" aria-label="Npm"><svg viewBox="0 0 780 250" aria-hidden="true"><path fill="#231F20" d="M240,250h100v-50h100V0H240V250z M340,50h50v100h-50V50z M480,0v200h100V50h50v150h50V50h50v150h50V0H480z M0,200h100V50h50v150h50V0H0V200z" stroke-width="5" stroke="#f7f7f7"></path></svg></a></div><div id="search" class="_581ebd89 relative flex-auto w-100 w-50-ns pv2-ns order-1-ns order-2"><form id="search" method="GET" action="/search" class="_13c93d41 relative flex bg-transparent ph3 ph2 pv2 ph0-ns pv0-ns bt b--black-10 bn-ns"><div class="e82b10fd relative dde91b96"><div class="_2f299eeb nowrap flex"><span class="_705cdf4f db fl pl3 pr1"><svg width="15px" height="15px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" aria-hidden="true"><g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g stroke="#777777" stroke-width="1.3"><g><path d="M13.4044,7.0274 C13.4044,10.5494 10.5494,13.4044 7.0274,13.4044 C3.5054,13.4044 0.6504,10.5494 0.6504,7.0274 C0.6504,3.5054 3.5054,0.6504 7.0274,0.6504 C10.5494,0.6504 13.4044,3.5054 13.4044,7.0274 Z"></path><path d="M11.4913,11.4913 L17.8683,17.8683"></path></g></g></g></svg></span><input type="search" role="combobox" name="q" hotkeys="[object Object]" placeholder="Search packages" aria-label="Search packages" aria-controls="typeahead-list-441635" aria-expanded="false" aria-activedescendant="" inputref="[object Object]" autoComplete="off" class="_390acbc5 f5 fw3 black relative" value="" element="input"/></div><div aria-live="polite" aria-atomic="true" class="_6f20b8d1"></div></div><button type="submit" class="_0da775bb bn pv2 ph4 f6 white pointer bn pv2 ph4 f6 white pointer" aria-label="Search">Search</button><input type="hidden" name="csrftoken" value="zsUexrvQf_8oY9HOZFbZUZNiUOzGhqByKyJSW-LNEMJ"/></form></div><div class="_6f31c82b ml3 mt2 mt0-ns pv2-ns flex-auto tr nowrap relative pointer fw6 order-1 order-2-ns"><div class="_1066d9e7 flex items-center self-center pl3"><a href="/signup" id="signup" class="_9752c8b3 pa2 lh-copy br2 f6 no-underline fw5 black dim ph3 mr3">Sign Up</a><a href="/login" id="signin" class="_352269a0 pa1 lh-copy br2 f6 no-underline fw5 black dim">Sign In</a></div></div></div></div></header><main id="main"> <div class="_102d5b24 flex flex-column flex-row-l w-100 mw7 mv4 mt5-l ph3-l mw9-l center ph2"><div class="_73a8e6f0 w-100 w-auto-l pv4 pv0-l"><div><a href="http://en.gravatar.com/emails/" aria-label="Your profile picture"><img src="/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMzMzOWY4OGRkN2YzMTgzZTc0ZGRiMTk3MWM1OWI2Yz9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.K89KMsLVTEIuriQylKa09bA8w8EGBeGFtMQM8_Tz_oM" style="width:200px;height:200px;min-width:200px;border-radius:4%" alt="" title=""/></a></div><div><h1 class="b219ea1a black tracked-tight fw6 mv1">evantahler</h1><div><hr class="fc85958f bb mv3 b--black-10"/><div class="eaac77a6 mv2">Evan Tahler</div></div><hr class="fc85958f bb mv3 b--black-10"/></div></div><div class="d2f60d44 w-100 w-auto-l flex-auto ph3 ph0-l pb3-l"><ul class="cfb2a888 flex flex-column flex-row-l w-100 ma0 pa0 mr2 mr0-l list" role="tablist" aria-owns="package-tab-packages package-tab-orgs"><li class="_8055e658 f5 fw5 tc pointer _7cec0316 ac5f7ef8 f4 fw6 black-50" role="presentation"><a class="_38ce9a85 link db ph4 fw6" href="?activeTab=packages" aria-selected="true" role="tab" aria-controls="tabpanel-packages" id="package-tab-packages" tabindex="0"><span><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cubes" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M488.6 250.2L392 214V105.5c0-15-9.3-28.4-23.4-33.7l-100-37.5c-8.1-3.1-17.1-3.1-25.3 0l-100 37.5c-14.1 5.3-23.4 18.7-23.4 33.7V214l-96.6 36.2C9.3 255.5 0 268.9 0 283.9V394c0 13.6 7.7 26.1 19.9 32.2l100 50c10.1 5.1 22.1 5.1 32.2 0l103.9-52 103.9 52c10.1 5.1 22.1 5.1 32.2 0l100-50c12.2-6.1 19.9-18.6 19.9-32.2V283.9c0-15-9.3-28.4-23.4-33.7zM358 214.8l-85 31.9v-68.2l85-37v73.3zM154 104.1l102-38.2 102 38.2v.6l-102 41.4-102-41.4v-.6zm84 291.1l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6zm240 112l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6z"></path></svg><span class="c3fc8940">93</span> Packages</span></a></li><li class="_8055e658 f5 fw5 tc pointer _2a0881eb" role="presentation"><a class="_38ce9a85 link db ph4 fw6" href="?activeTab=orgs" aria-selected="false" role="tab" aria-controls="tabpanel-orgs" id="package-tab-orgs" tabindex="-1"><span><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="users" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M96 224c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm448 0c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm32 32h-64c-17.6 0-33.5 7.1-45.1 18.6 40.3 22.1 68.9 62 75.1 109.4h66c17.7 0 32-14.3 32-32v-32c0-35.3-28.7-64-64-64zm-256 0c61.9 0 112-50.1 112-112S381.9 32 320 32 208 82.1 208 144s50.1 112 112 112zm76.8 32h-8.3c-20.8 10-43.9 16-68.5 16s-47.6-6-68.5-16h-8.3C179.6 288 128 339.6 128 403.2V432c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48v-28.8c0-63.6-51.6-115.2-115.2-115.2zm-223.7-13.4C161.5 263.1 145.6 256 128 256H64c-35.3 0-64 28.7-64 64v32c0 17.7 14.3 32 32 32h65.9c6.3-47.4 34.9-87.3 75.2-109.4z"></path></svg><span class="c3fc8940">0</span> Organizations</span></a></li></ul><div role="tabpanel" id="tabpanel-packages" aria-expanded="true"><div class="f3f8c3f4 flex flex-row align-center mt3 mb3"><h2 class="_3bc44b57 ma0"><a id="packages" href="?activeTab=packages" class="_5240e347 flex-none no-underline black fw3 lh-copy"><span class="_57e26c3d black-90 tracked-tight fw6 mr2">Packages </span><span class="c5c8a11c ph1 br2 ba b--black-20 f5 fw6 black">93</span></a></h2><div class="flex-auto"></div></div><div class="_0897331b mt0"><ul class="_0897331b mt0"><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/taskrabbit"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">taskrabbit</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">a node.js wrapper for the taskrabbit API</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.1<!-- --> • <!-- -->12 years ago</span><span class="_657f443d">published version <!-- -->0.0.1<!-- -->, <!-- -->12 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/couchbase-structures"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">couchbase-structures</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">compound data structures for couchbase built in node.js</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.5<!-- --> • <!-- -->11 years ago</span><span class="_657f443d">published version <!-- -->0.0.5<!-- -->, <!-- -->11 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/smartdc-listcomputenodes"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">smartdc-listcomputenodes</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">List your joyent machines by the compute node they are running on. Ensure your workload is distributed!</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.1<!-- --> • <!-- -->11 years ago</span><span class="_657f443d">published version <!-- -->0.0.1<!-- -->, <!-- -->11 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/smartdc-cost"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">smartdc-cost</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">Extra commands added to Joyent's smartdc package for the financially conscious</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.2.0<!-- --> • <!-- -->11 years ago</span><span class="_657f443d">published version <!-- -->0.2.0<!-- -->, <!-- -->11 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/node-resquebus"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">node-resquebus</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">an implementation of resquebus in node</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.1.3<!-- --> • <!-- -->10 years ago</span><span class="_657f443d">published version <!-- -->0.1.3<!-- -->, <!-- -->10 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/browser_fingerprint"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">browser_fingerprint</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">uniquely identify browsers</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->2.0.5<!-- --> • <!-- -->5 months ago</span><span class="_657f443d">published version <!-- -->2.0.5<!-- -->, <!-- -->5 months ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-opbeat-plugin"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-opbeat-plugin</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">I use opbeat as an error reporter</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.1<!-- --> • <!-- -->10 years ago</span><span class="_657f443d">published version <!-- -->0.0.1<!-- -->, <!-- -->10 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-airbrake-plugin"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-airbrake-plugin</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">I use airbrake as an error reporter</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.7<!-- --> • <!-- -->10 years ago</span><span class="_657f443d">published version <!-- -->0.0.7<!-- -->, <!-- -->10 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-bugsnag-plugin"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-bugsnag-plugin</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">I use bugsnag as an error reporter</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.9<!-- --> • <!-- -->10 years ago</span><span class="_657f443d">published version <!-- -->0.0.9<!-- -->, <!-- -->10 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-sample-plugin"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-sample-plugin</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">I am a simple sample plugin for actionhero</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.6<!-- --> • <!-- -->9 years ago</span><span class="_657f443d">published version <!-- -->0.0.6<!-- -->, <!-- -->9 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/node-resque"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">node-resque</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">an opinionated implementation of resque in node</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->9.3.5<!-- --> • <!-- -->5 months ago</span><span class="_657f443d">published version <!-- -->9.3.5<!-- -->, <!-- -->5 months ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/actionhero-client"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">actionhero-client</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">ActionHero client for other node.js servers to use</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->6.0.0<!-- --> • <!-- -->7 years ago</span><span class="_657f443d">published version <!-- -->6.0.0<!-- -->, <!-- -->7 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-newrelic-plugin"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-newrelic-plugin</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">I use newrelic in actionhero</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.7.3<!-- --> • <!-- -->6 years ago</span><span class="_657f443d">published version <!-- -->0.7.3<!-- -->, <!-- -->6 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-sequelize-plugin"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-sequelize-plugin</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">Use Sequelize in ActionHero</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->5.1.5<!-- --> • <!-- -->2 years ago</span><span class="_657f443d">published version <!-- -->5.1.5<!-- -->, <!-- -->2 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/elasticdump"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">elasticdump</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">import and export tools for elasticsearch</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~ferronrsmith" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher ferronrsmith">ferronrsmith</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->6.114.0<!-- --> • <!-- -->4 days ago</span><span class="_657f443d">published version <!-- -->6.114.0<!-- -->, <!-- -->4 days ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/phidgets"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">phidgets</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">A Node.js library enabling the use of various Phidgets interface boards.</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~jpcote" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher jpcote">jpcote</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.5.12<!-- --> • <!-- -->7 years ago</span><span class="_657f443d">published version <!-- -->0.5.12<!-- -->, <!-- -->7 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/actionhero"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">actionhero</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">The reusable, scalable, and quick node.js API server for stateless and stateful applications</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->29.3.2<!-- --> • <!-- -->4 months ago</span><span class="_657f443d">published version <!-- -->29.3.2<!-- -->, <!-- -->4 months ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/node-queue-bus"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">node-queue-bus</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">an implementation of queuebus in node</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~pdevine" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher pdevine">pdevine</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.2.1<!-- --> • <!-- -->7 years ago</span><span class="_657f443d">published version <!-- -->0.2.1<!-- -->, <!-- -->7 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-chatlog-plugin"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-chatlog-plugin</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">I log chat messages to redis, and expose actions to read them</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.3<!-- --> • <!-- -->10 years ago</span><span class="_657f443d">published version <!-- -->0.0.3<!-- -->, <!-- -->10 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-hipchat-server-plugin"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-hipchat-server-plugin</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">I connect actionhero to HipChat</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.9<!-- --> • <!-- -->10 years ago</span><span class="_657f443d">published version <!-- -->0.0.9<!-- -->, <!-- -->10 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/empujar"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">empujar</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">When you need to push data around, you push it. Push it real good. An ETL and Operations tool.</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~rajpalparyani" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher rajpalparyani">rajpalparyani</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.2.24<!-- --> • <!-- -->4 years ago</span><span class="_657f443d">published version <!-- -->0.2.24<!-- -->, <!-- -->4 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-stats-plugin"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-stats-plugin</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">I collect, store, and fetch stats about your actionhero cluster</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.1<!-- --> • <!-- -->9 years ago</span><span class="_657f443d">published version <!-- -->0.0.1<!-- -->, <!-- -->9 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/system-timezone"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">system-timezone</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">A node.js package to return this host's timezone</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.0.3<!-- --> • <!-- -->9 years ago</span><span class="_657f443d">published version <!-- -->0.0.3<!-- -->, <!-- -->9 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-resque-ui"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-resque-ui</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">A resque administration website for actionhero</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->3.0.1<!-- --> • <!-- -->3 years ago</span><span class="_657f443d">published version <!-- -->3.0.1<!-- -->, <!-- -->3 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li><li class="_2309b204"><section class="ef4d7c63 pl1-ns pt3 pb2 ph1 b--black-10 _266977fe flex-l bb"><div class="_0d2164ff"><div class="bea55649 flex flex-row flex-wrap items-end pr3"><a target="_self" href="/package/ah-elasticsearch-orm"><img alt="" src="https://static-production.npmjs.com/26de4581a89de8a6501ce9a3dbb06b85.svg" title="public package" class="c9d94a14 dn"/><h3 class="db7ee1ac fw6 f4 black-90 dib lh-solid ma0 no-underline hover-black">ah-elasticsearch-orm</h3></a></div><p class="_8fbbd57d f5 black-60 mt1 mb0 pv1 no-underline lh-copy">An Elasticsearch ORM for ActionHero Projects. Provides CRUD instance methods, finders, updates, and collection abstractions</p><div class="_0be7a12f f6 black-80 mt1 mb1 flex-ns db flex-row lh-copy"><div class="_045facde flex flex-row pl1 br3"><a target="_self" href="/~evantahler" class="e98ba1cc pl2 pr2 black-70 fw6 db hover-black no-underline" aria-label="publisher evantahler">evantahler</a></div><span aria-hidden="true" class="_66c2abad flex-grow-1">published<!-- --> <!-- -->0.4.2<!-- --> • <!-- -->8 years ago</span><span class="_657f443d">published version <!-- -->0.4.2<!-- -->, <!-- -->8 years ago</span></div></div><div class="_5c95be4e items-start flex flex-row items-center flex-shrink-0 c62c138e pl2 overflow-x-hidden"></div></section></li></ul></div></div><a href="?page=1" class="a8d24ef6 _24a1e9c7 dab9924c br2 pv2 ph3 fw5 f5 tc button button-reset pointer ma2 truncate ml0 no-underline _795cdbae db">show more packages</a></div></div> </main><footer class="cd2827bb bt b--black-10 mt4"><h2 class="e13b5dae">Footer</h2><div id="footer" class="center mw9 pa3 flex flex-column flex-wrap-m flex-row-ns"><div class="flex-auto pa4-ns pa3 w-100 w-10-l"><div class="_802b5507 pt3"><a target="_blank" rel="noopener noreferrer nofollow" href="https://github.com/npm" aria-label="Visit npm GitHub page"><svg viewBox="0 0 27.23 27.23" aria-hidden="true"><rect fill="#333333" width="27.23" height="27.23" rx="2"></rect><polygon fill="#fff" points="5.8 21.75 13.66 21.75 13.67 9.98 17.59 9.98 17.58 21.76 21.51 21.76 21.52 6.06 5.82 6.04 5.8 21.75"></polygon></svg></a></div><div class="_802b5507 pt3"><a target="_blank" rel="noopener noreferrer nofollow" href="https://github.com" aria-label="GitHub"><svg aria-hidden="true" focusable="false" class="" viewBox="0 0 24 24" width="50" height="50" fill="black" style="display:inline-block;user-select:none;vertical-align:top;overflow:visible"><path d="M12.5.75C6.146.75 1 5.896 1 12.25c0 5.089 3.292 9.387 7.863 10.91.575.101.79-.244.79-.546 0-.273-.014-1.178-.014-2.142-2.889.532-3.636-.704-3.866-1.35-.13-.331-.69-1.352-1.18-1.625-.402-.216-.977-.748-.014-.762.906-.014 1.553.834 1.769 1.179 1.035 1.74 2.688 1.25 3.349.948.1-.747.402-1.25.733-1.538-2.559-.287-5.232-1.279-5.232-5.678 0-1.25.445-2.285 1.178-3.09-.115-.288-.517-1.467.115-3.048 0 0 .963-.302 3.163 1.179.92-.259 1.897-.388 2.875-.388.977 0 1.955.13 2.875.388 2.2-1.495 3.162-1.179 3.162-1.179.633 1.581.23 2.76.115 3.048.733.805 1.179 1.825 1.179 3.09 0 4.413-2.688 5.39-5.247 5.678.417.36.776 1.05.776 2.128 0 1.538-.014 2.774-.014 3.162 0 .302.216.662.79.547C20.709 21.637 24 17.324 24 12.25 24 5.896 18.854.75 12.5.75Z"></path></svg></a></div></div><div class="flex-auto pa4-ns pa3 w-30-ns w-50-m"><h3 id="support" class="_1b8c0a9f">Support</h3><ul class="list pl0" aria-labelledby="support"><li class="pv1"><a class="df995acb no-underline pr1" href="https://docs.npmjs.com">Help</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="https://github.com/advisories">Advisories</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="http://status.npmjs.org/">Status</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/support">Contact npm</a></li></ul></div><div class="flex-auto pa4-ns pa3 w-30-ns w-50-m"><h3 id="company" class="_1b8c0a9f">Company</h3><ul class="list pl0" aria-labelledby="company"><li class="pv1"><a class="df995acb no-underline pr1" href="/about">About</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="https://github.blog/tag/npm/">Blog</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/press">Press</a></li></ul></div><div class="flex-auto pa4-ns pa3 w-30-ns w-50-m"><h3 id="terms" class="_1b8c0a9f">Terms & Policies</h3><ul class="list pl0" aria-labelledby="terms"><li class="pv1"><a class="df995acb no-underline pr1" href="/policies/">Policies</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/policies/terms">Terms of Use</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/policies/conduct">Code of Conduct</a></li><li class="pv1"><a class="df995acb no-underline pr1" href="/policies/privacy">Privacy</a></li></ul></div></div></footer></div><div class="_8a62ca63 fixed top-0 left-0 z-999" style="opacity:0;transform:scaleX(1);-webkit-transform:scaleX(1);-moz-transform:scaleX(1)"></div></div></div><script integrity="sha512-oJDjYBPDTXNl9mrtsuShzdDPUErMbbi+jJ1ZgsAMn+ObI0OayfplpP1JfMTsFynO9JgowVsaVj+Vswhz8BlmKA==">window.__context__ = {"context":{"scope":{"type":"user","name":"evantahler","parent":{"name":"evantahler","avatars":{"small":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMzMzOWY4OGRkN2YzMTgzZTc0ZGRiMTk3MWM1OWI2Yz9zaXplPTUwJmRlZmF1bHQ9cmV0cm8ifQ.DI_nieNR8NtUiMOcY4DgJn4T6waMIk1Lj9NAvxK_Jhk","medium":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMzMzOWY4OGRkN2YzMTgzZTc0ZGRiMTk3MWM1OWI2Yz9zaXplPTEwMCZkZWZhdWx0PXJldHJvIn0.IUDx3RYlTNdAt3AnrbRo7Vc6CogMy_a3kiEg-Z6tjnw","large":"/npm-avatar/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdmF0YXJVUkwiOiJodHRwczovL3MuZ3JhdmF0YXIuY29tL2F2YXRhci9jMzMzOWY4OGRkN2YzMTgzZTc0ZGRiMTk3MWM1OWI2Yz9zaXplPTQ5NiZkZWZhdWx0PXJldHJvIn0.K89KMsLVTEIuriQylKa09bA8w8EGBeGFtMQM8_Tz_oM"},"resource":{"githubLegacy":true,"twitterLegacy":true,"github":"evantahler","twitter":"evantahler","fullname":"Evan Tahler"}},"created":"2015-02-26T01:39:58.889Z","updated":"2015-02-26T01:39:58.889Z","urls":{"detail":"/v2/scopes/scope/evantahler","refresh":"/v2/scopes/scope/evantahler/refresh","teams":"/v2/scopes/scope/evantahler/teams/","packages":"/v2/scopes/scope/evantahler/packages/","addPackage":null},"id":81017,"account":null,"resource":{"githubLegacy":true,"twitterLegacy":true,"github":"evantahler","twitter":"evantahler","fullname":"Evan Tahler"}},"orgs":{"total":0,"objects":[]},"packages":{"total":93,"objects":[{"id":9587,"name":"taskrabbit","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424928528049,"rel":"10 years ago"},"updated":{"ts":1424928528049,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"a node.js wrapper for the taskrabbit API","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.1"},"lastPublish":{"maintainer":"evantahler","time":"2012-12-27T18:37:04.351Z","formattedTime":"12 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1356633424351,"rel":"12 years ago"},"version":"0.0.1"},{"id":16852,"name":"couchbase-structures","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424928877682,"rel":"10 years ago"},"updated":{"ts":1424928877682,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"compound data structures for couchbase built in node.js","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.5"},"lastPublish":{"maintainer":"evantahler","time":"2013-06-10T00:43:41.332Z","formattedTime":"11 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1370825021332,"rel":"11 years ago"},"version":"0.0.5"},{"id":30770,"name":"smartdc-listcomputenodes","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424929610643,"rel":"10 years ago"},"updated":{"ts":1424929610643,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"List your joyent machines by the compute node they are running on. Ensure your workload is distributed!","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.1"},"lastPublish":{"maintainer":"evantahler","time":"2014-01-20T19:25:31.599Z","formattedTime":"11 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1390245931599,"rel":"11 years ago"},"version":"0.0.1"},{"id":32043,"name":"smartdc-cost","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424929681428,"rel":"10 years ago"},"updated":{"ts":1424929681428,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"Extra commands added to Joyent's smartdc package for the financially conscious","maintainers":["evantahler"],"dist-tags":{"latest":"0.2.0"},"lastPublish":{"maintainer":"evantahler","time":"2013-12-10T22:55:47.925Z","formattedTime":"11 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1386716147925,"rel":"11 years ago"},"version":"0.2.0"},{"id":67117,"name":"node-resquebus","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424942559357,"rel":"10 years ago"},"updated":{"ts":1424942559357,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"an implementation of resquebus in node","maintainers":["evantahler","bleonard"],"dist-tags":{"latest":"0.1.3"},"lastPublish":{"maintainer":"evantahler","time":"2014-07-03T23:12:32.013Z","formattedTime":"10 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1404429152013,"rel":"10 years ago"},"version":"0.1.3"},{"id":100341,"name":"browser_fingerprint","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424945290553,"rel":"10 years ago"},"updated":{"ts":1424945290553,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"uniquely identify browsers","maintainers":["evantahler"],"dist-tags":{"latest":"2.0.5"},"lastPublish":{"maintainer":"evantahler","time":"2024-06-16T17:14:06.799Z","formattedTime":"5 months ago"},"types":{"typescript":{"bundled":"./dist/browserFingerprint"}},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1718558046799,"rel":"5 months ago"},"version":"2.0.5"},{"id":112111,"name":"ah-opbeat-plugin","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424946461643,"rel":"10 years ago"},"updated":{"ts":1424946461643,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"I use opbeat as an error reporter","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.1"},"lastPublish":{"maintainer":"evantahler","time":"2014-07-23T00:27:15.175Z","formattedTime":"10 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1406075235175,"rel":"10 years ago"},"version":"0.0.1"},{"id":112114,"name":"ah-airbrake-plugin","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424946461676,"rel":"10 years ago"},"updated":{"ts":1424946461676,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"I use airbrake as an error reporter","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.7"},"lastPublish":{"maintainer":"evantahler","time":"2015-01-15T05:28:49.839Z","formattedTime":"10 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1421299729839,"rel":"10 years ago"},"version":"0.0.7"},{"id":112115,"name":"ah-bugsnag-plugin","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424946461685,"rel":"10 years ago"},"updated":{"ts":1424946461685,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"I use bugsnag as an error reporter","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.9"},"lastPublish":{"maintainer":"evantahler","time":"2015-03-20T12:26:27.159Z","formattedTime":"10 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1426854387159,"rel":"10 years ago"},"version":"0.0.9"},{"id":112116,"name":"ah-sample-plugin","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424946465890,"rel":"10 years ago"},"updated":{"ts":1424946465890,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"I am a simple sample plugin for actionhero","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.6"},"lastPublish":{"maintainer":"evantahler","time":"2015-12-12T04:31:25.913Z","formattedTime":"9 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1449894685913,"rel":"9 years ago"},"version":"0.0.6"},{"id":120537,"name":"node-resque","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424947421253,"rel":"10 years ago"},"updated":{"ts":1585243519136,"rel":"5 years ago"},"is_high_impact":false,"freeze_status":null,"description":"an opinionated implementation of resque in node","maintainers":["bleonard","davidjairala","evantahler","gcoonrod"],"dist-tags":{"next":"9.1.0-alpha.2","latest":"9.3.5"},"lastPublish":{"maintainer":"evantahler","time":"2024-06-16T17:25:42.428Z","formattedTime":"5 months ago"},"types":{"typescript":{"bundled":"dist/index","package":"@types/node-resque"}},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1718558742428,"rel":"5 months ago"},"version":"9.3.5"},{"id":124392,"name":"actionhero-client","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424947897152,"rel":"10 years ago"},"updated":{"ts":1424947897152,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"ActionHero client for other node.js servers to use","maintainers":["evantahler"],"dist-tags":{"latest":"6.0.0"},"lastPublish":{"maintainer":"evantahler","time":"2017-10-01T07:31:45.091Z","formattedTime":"7 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1506843105091,"rel":"7 years ago"},"version":"6.0.0"},{"id":127343,"name":"ah-newrelic-plugin","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424948279194,"rel":"10 years ago"},"updated":{"ts":1424948279194,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"I use newrelic in actionhero","maintainers":["evantahler"],"dist-tags":{"latest":"0.7.3"},"lastPublish":{"maintainer":"evantahler","time":"2019-02-26T03:17:26.676Z","formattedTime":"6 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1551151046676,"rel":"6 years ago"},"version":"0.7.3"},{"id":127593,"name":"ah-sequelize-plugin","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424948308285,"rel":"10 years ago"},"updated":{"ts":1424948308285,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"Use Sequelize in ActionHero","maintainers":["dangerdespain","evantahler","submitteddenied","bakavic","l0oky","bayssmekanique"],"dist-tags":{"latest":"5.1.5","next":"2.0.1"},"lastPublish":{"maintainer":"evantahler","time":"2022-11-01T16:00:06.470Z","formattedTime":"2 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1667318406470,"rel":"2 years ago"},"version":"5.1.5"},{"id":131840,"name":"elasticdump","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424948855071,"rel":"10 years ago"},"updated":{"ts":1526520719354,"rel":"7 years ago"},"is_high_impact":false,"freeze_status":null,"description":"import and export tools for elasticsearch","maintainers":["bleonard","ferronrsmith","davidjairala","evantahler"],"dist-tags":{"latest":"6.114.0"},"lastPublish":{"maintainer":"ferronrsmith","time":"2024-11-21T02:14:16.213Z","formattedTime":"4 days ago"},"types":{},"publisher":{"name":"ferronrsmith","avatars":{}},"date":{"ts":1732155256213,"rel":"4 days ago"},"version":"6.114.0"},{"id":132959,"name":"phidgets","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424949000210,"rel":"10 years ago"},"updated":{"ts":1424949000210,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"A Node.js library enabling the use of various Phidgets interface boards.","maintainers":["evantahler","jpcote"],"dist-tags":{"latest":"0.5.12"},"lastPublish":{"maintainer":"jpcote","time":"2017-08-23T18:52:40.986Z","formattedTime":"7 years ago"},"types":{},"publisher":{"name":"jpcote","avatars":{}},"date":{"ts":1503514360986,"rel":"7 years ago"},"version":"0.5.12"},{"id":134805,"name":"actionhero","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1424949250010,"rel":"10 years ago"},"updated":{"ts":1566495391964,"rel":"5 years ago"},"is_high_impact":false,"freeze_status":null,"description":"The reusable, scalable, and quick node.js API server for stateless and stateful applications","maintainers":["bleonard","davidjairala","crrobinson14","evantahler","gcoonrod"],"dist-tags":{"eighteen":"18.1.4","seventeen":"17.1.3","twenty":"20.0.0","next":"28.0.4-alpha.0","latest":"29.3.2"},"lastPublish":{"maintainer":"evantahler","time":"2024-07-29T03:55:58.679Z","formattedTime":"4 months ago"},"types":{"typescript":{"bundled":"dist/index"}},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1722225358679,"rel":"4 months ago"},"version":"29.3.2"},{"id":365521,"name":"node-queue-bus","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1426850685425,"rel":"10 years ago"},"updated":{"ts":1426850685425,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"an implementation of queuebus in node","maintainers":["pdevine","davidjairala","bleonard","evantahler"],"dist-tags":{"latest":"0.2.1"},"lastPublish":{"maintainer":"pdevine","time":"2017-06-22T18:48:32.309Z","formattedTime":"7 years ago"},"types":{},"publisher":{"name":"pdevine","avatars":{}},"date":{"ts":1498157312309,"rel":"7 years ago"},"version":"0.2.1"},{"id":477507,"name":"ah-chatlog-plugin","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1430129810522,"rel":"10 years ago"},"updated":{"ts":1430129810522,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"I log chat messages to redis, and expose actions to read them","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.3"},"lastPublish":{"maintainer":"evantahler","time":"2015-04-27T10:35:34.307Z","formattedTime":"10 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1430130934307,"rel":"10 years ago"},"version":"0.0.3"},{"id":482361,"name":"ah-hipchat-server-plugin","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1431296206617,"rel":"10 years ago"},"updated":{"ts":1431296206617,"rel":"10 years ago"},"is_high_impact":false,"freeze_status":null,"description":"I connect actionhero to HipChat","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.9"},"lastPublish":{"maintainer":"evantahler","time":"2015-05-15T10:41:59.176Z","formattedTime":"10 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1431686519176,"rel":"10 years ago"},"version":"0.0.9"},{"id":523078,"name":"empujar","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1440685192600,"rel":"9 years ago"},"updated":{"ts":1440685192600,"rel":"9 years ago"},"is_high_impact":false,"freeze_status":null,"description":"When you need to push data around, you push it. Push it real good. An ETL and Operations tool.","maintainers":["bleonard","davidjairala","evantahler","rajpalparyani"],"dist-tags":{"latest":"0.2.24"},"lastPublish":{"maintainer":"rajpalparyani","time":"2020-12-10T20:11:24.243Z","formattedTime":"4 years ago"},"types":{},"publisher":{"name":"rajpalparyani","avatars":{}},"date":{"ts":1607631084243,"rel":"4 years ago"},"version":"0.2.24"},{"id":529621,"name":"ah-stats-plugin","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1442078599699,"rel":"9 years ago"},"updated":{"ts":1442078599699,"rel":"9 years ago"},"is_high_impact":false,"freeze_status":null,"description":"I collect, store, and fetch stats about your actionhero cluster","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.1"},"lastPublish":{"maintainer":"evantahler","time":"2015-09-12T17:23:24.984Z","formattedTime":"9 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1442078604984,"rel":"9 years ago"},"version":"0.0.1"},{"id":532631,"name":"system-timezone","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1442680698149,"rel":"9 years ago"},"updated":{"ts":1442680698149,"rel":"9 years ago"},"is_high_impact":false,"freeze_status":null,"description":"A node.js package to return this host's timezone","maintainers":["evantahler"],"dist-tags":{"latest":"0.0.3"},"lastPublish":{"maintainer":"evantahler","time":"2015-09-19T21:15:02.861Z","formattedTime":"9 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1442697302861,"rel":"9 years ago"},"version":"0.0.3"},{"id":689375,"name":"ah-resque-ui","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1467739477089,"rel":"8 years ago"},"updated":{"ts":1467739477089,"rel":"8 years ago"},"is_high_impact":false,"freeze_status":null,"description":"A resque administration website for actionhero","maintainers":["evantahler"],"dist-tags":{"latest":"3.0.1","next":"0.5.3"},"lastPublish":{"maintainer":"evantahler","time":"2021-12-03T06:09:45.068Z","formattedTime":"3 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1638511785068,"rel":"3 years ago"},"version":"3.0.1"},{"id":694851,"name":"ah-elasticsearch-orm","private":false,"publish_requires_tfa":null,"settings":null,"created":{"ts":1468536595353,"rel":"8 years ago"},"updated":{"ts":1468536595353,"rel":"8 years ago"},"is_high_impact":false,"freeze_status":null,"description":"An Elasticsearch ORM for ActionHero Projects. Provides CRUD instance methods, finders, updates, and collection abstractions","maintainers":["evantahler"],"dist-tags":{"latest":"0.4.2"},"lastPublish":{"maintainer":"evantahler","time":"2016-12-01T04:59:38.280Z","formattedTime":"8 years ago"},"types":{},"publisher":{"name":"evantahler","avatars":{}},"date":{"ts":1480568378280,"rel":"8 years ago"},"version":"0.4.2"}],"urls":{"next":"?page=1"}},"pagination":{"perPage":25,"page":0},"isAccountLinkEnabledForUser":true,"user":null,"auditLogEnabled":false,"isV3SearchEnabled":false,"userEmailVerified":null,"csrftoken":"zsUexrvQf_8oY9HOZFbZUZNiUOzGhqByKyJSW-LNEMJ","notifications":[]},"chunks":{"commons":["commons.b79be12adf7a5316de1e.js","commons.b79be12adf7a5316de1e.js.map"],"styles":["styles.c617df3efc3b584cc1d7.css","minicssextractbug.d20b6beec9f84f3c51f4.js","styles.c617df3efc3b584cc1d7.css.map","minicssextractbug.d20b6beec9f84f3c51f4.js.map"],"acceptance/acceptance":["acceptance/acceptance.8f158bb6f917058edc15.js","acceptance/acceptance.8f158bb6f917058edc15.js.map"],"audit-logs/actions/common/auditLogContainer":["audit-logs/actions/common/auditLogContainer.b53482e6e8d59f143dd9.js","audit-logs/actions/common/auditLogContainer.b53482e6e8d59f143dd9.js.map"],"audit-logs/actions/common/dot":["audit-logs/actions/common/dot.c9c77b74c1f2a46df71a.js","audit-logs/actions/common/dot.c9c77b74c1f2a46df71a.js.map"],"audit-logs/actions/common/filterActions":["audit-logs/actions/common/filterActions.1c4e17f8eee2580fb525.js","audit-logs/actions/common/filterActions.1c4e17f8eee2580fb525.js.map"],"audit-logs/actions/common/spaceGap":["audit-logs/actions/common/spaceGap.492b805c8fd7f0477e90.js","audit-logs/actions/common/spaceGap.492b805c8fd7f0477e90.js.map"],"audit-logs/actions/orgAddUser":["audit-logs/actions/orgAddUser.0f31c5ea1667ae4f4352.js","audit-logs/actions/orgAddUser.0f31c5ea1667ae4f4352.js.map"],"audit-logs/actions/orgCreateTeam":["audit-logs/actions/orgCreateTeam.6b14599a54a04e6d1051.js","audit-logs/actions/orgCreateTeam.6b14599a54a04e6d1051.js.map"],"audit-logs/actions/orgDeleteTeam":["audit-logs/actions/orgDeleteTeam.aae4b5efa098d755e655.js","audit-logs/actions/orgDeleteTeam.aae4b5efa098d755e655.js.map"],"audit-logs/actions/orgRemoveUser":["audit-logs/actions/orgRemoveUser.e08363d532659cd80b38.js","audit-logs/actions/orgRemoveUser.e08363d532659cd80b38.js.map"],"audit-logs/actions/packageAddDistTag":["audit-logs/actions/packageAddDistTag.04901ad0124d77154cce.js","audit-logs/actions/packageAddDistTag.04901ad0124d77154cce.js.map"],"audit-logs/actions/packageDeprecate":["audit-logs/actions/packageDeprecate.35c6da318f905a6bf1f6.js","audit-logs/actions/packageDeprecate.35c6da318f905a6bf1f6.js.map"],"audit-logs/actions/packagePublish":["audit-logs/actions/packagePublish.729831beb78e6d96f9f2.js","audit-logs/actions/packagePublish.729831beb78e6d96f9f2.js.map"],"audit-logs/actions/packageRemoveDistTag":["audit-logs/actions/packageRemoveDistTag.22e2962ec6870a30e58e.js","audit-logs/actions/packageRemoveDistTag.22e2962ec6870a30e58e.js.map"],"audit-logs/actions/packageUnpublish":["audit-logs/actions/packageUnpublish.b324240e345d5642454d.js","audit-logs/actions/packageUnpublish.b324240e345d5642454d.js.map"],"audit-logs/actions/packageUpdateAccess":["audit-logs/actions/packageUpdateAccess.36b80a359bfca15db60c.js","audit-logs/actions/packageUpdateAccess.36b80a359bfca15db60c.js.map"],"audit-logs/actions/teamAddPackage":["audit-logs/actions/teamAddPackage.ea101b31350f95441e06.js","audit-logs/actions/teamAddPackage.ea101b31350f95441e06.js.map"],"audit-logs/actions/teamAddUser":["audit-logs/actions/teamAddUser.c0e25078bded50e7bb86.js","audit-logs/actions/teamAddUser.c0e25078bded50e7bb86.js.map"],"audit-logs/actions/teamRemovePackage":["audit-logs/actions/teamRemovePackage.eda9b927db6081e54b14.js","audit-logs/actions/teamRemovePackage.eda9b927db6081e54b14.js.map"],"audit-logs/actions/teamRemoveUser":["audit-logs/actions/teamRemoveUser.9d04376f4805de3e9ed9.js","audit-logs/actions/teamRemoveUser.9d04376f4805de3e9ed9.js.map"],"audit-logs/actions/teamUpdatePackageAccess":["audit-logs/actions/teamUpdatePackageAccess.1c12462cbf2723411be2.js","audit-logs/actions/teamUpdatePackageAccess.1c12462cbf2723411be2.js.map"],"audit-logs/audit-logs":["audit-logs/audit-logs.84bf18eb71c53a904abd.js","audit-logs/audit-logs.84bf18eb71c53a904abd.js.map"],"audit-logs/audit-search-input":["audit-logs/audit-search-input.523cd907c3783e6df929.js","audit-logs/audit-search-input.523cd907c3783e6df929.js.map"],"audit-logs/list":["audit-logs/list.f1352bddddbcaafec2c8.js","audit-logs/list.f1352bddddbcaafec2c8.js.map"],"audit-logs/no-logs":["audit-logs/no-logs.981070ccacb6bef1146a.js","audit-logs/no-logs.981070ccacb6bef1146a.js.map"],"audit-logs/no-logs-with-query":["audit-logs/no-logs-with-query.3c718bcab9eb6a9aac8c.js","audit-logs/no-logs-with-query.3c718bcab9eb6a9aac8c.js.map"],"auth/account-recovery-message":["auth/account-recovery-message.d3d0a9c5aab77c31bf16.js","auth/account-recovery-message.d3d0a9c5aab77c31bf16.js.map"],"auth/authentication-successful":["auth/authentication-successful.89e95385555c15026571.js","auth/authentication-successful.89e95385555c15026571.js.map"],"auth/email-otp":["auth/email-otp.3279bf105e863189d4a7.js","auth/email-otp.3279bf105e863189d4a7.js.map"],"auth/escalate":["auth/escalate.b5713ed563299a8ab350.js","auth/escalate.b5713ed563299a8ab350.js.map"],"auth/forgot":["auth/forgot.287baf56741695c53d34.js","auth/forgot.287baf56741695c53d34.js.map"],"auth/forgot-sent":["auth/forgot-sent.ffadf9676fa54b2e82f0.js","auth/forgot-sent.ffadf9676fa54b2e82f0.js.map"],"auth/forgot-sent-anonymized":["auth/forgot-sent-anonymized.2f4c7b204e053346dbb7.js","auth/forgot-sent-anonymized.2f4c7b204e053346dbb7.js.map"],"auth/invite-signup":["auth/invite-signup.6b3ca39c21161aa7aa4b.js","auth/invite-signup.6b3ca39c21161aa7aa4b.js.map"],"auth/liminal-login-footer":["auth/liminal-login-footer.b0a6c721462424c315b6.js","auth/liminal-login-footer.b0a6c721462424c315b6.js.map"],"auth/login":["auth/login.d73d8ab4023a4fae00f2.js","auth/login.d73d8ab4023a4fae00f2.js.map"],"auth/otp":["auth/otp.d66d1f2c3e7ac740a735.js","auth/otp.d66d1f2c3e7ac740a735.js.map"],"auth/password":["auth/password.bd7abeefd167e1477640.js","auth/password.bd7abeefd167e1477640.js.map"],"auth/recovery-code":["auth/recovery-code.56ab0d8fec282e5241ef.js","auth/recovery-code.56ab0d8fec282e5241ef.js.map"],"auth/recovery-email-otp":["auth/recovery-email-otp.c39a61feadf4cfe92c69.js","auth/recovery-email-otp.c39a61feadf4cfe92c69.js.map"],"auth/reset-password":["auth/reset-password.4d9f8a6fe7a7f23eb7e8.js","auth/reset-password.4d9f8a6fe7a7f23eb7e8.js.map"],"auth/signup":["auth/signup.d816b922686bddff6edb.js","auth/signup.d816b922686bddff6edb.js.map"],"auth/test/email-otp-test":["auth/test/email-otp-test.a6d6867594488d8f2281.js","auth/test/email-otp-test.a6d6867594488d8f2281.js.map"],"auth/test/escalate-test":["auth/test/escalate-test.9fd56559c2d09eea5c10.js","auth/test/escalate-test.9fd56559c2d09eea5c10.js.map"],"auth/test/otp-test":["auth/test/otp-test.d1c4bddaa5a5d30df9db.js","auth/test/otp-test.d1c4bddaa5a5d30df9db.js.map"],"auth/test/webauthn-login-test":["auth/test/webauthn-login-test.ffe93475a9861015a293.js","auth/test/webauthn-login-test.ffe93475a9861015a293.js.map"],"auth/webauthn-cli-login":["auth/webauthn-cli-login.0b3ee2f30201bfa8a451.js","auth/webauthn-cli-login.0b3ee2f30201bfa8a451.js.map"],"auth/webauthn-login":["auth/webauthn-login.2dc9191ceaad30640841.js","auth/webauthn-login.2dc9191ceaad30640841.js.map"],"billing/delete-org":["billing/delete-org.d20bd0f1aaacb8fc90d7.js","billing/delete-org.d20bd0f1aaacb8fc90d7.js.map"],"billing/detail":["billing/detail.f9a60c5242880e6d43f5.js","billing/detail.f9a60c5242880e6d43f5.js.map"],"billing/downgrade":["billing/downgrade.92d9ff7d4bff0441004b.js","billing/downgrade.92d9ff7d4bff0441004b.js.map"],"billing/upgrade":["billing/upgrade.173ac6b34ec110b0769f.js","billing/upgrade.173ac6b34ec110b0769f.js.map"],"contact/contact":["contact/contact.430ee63adf050e9ba912.js","contact/contact.430ee63adf050e9ba912.js.map"],"contact/recovery-support-v1":["contact/recovery-support-v1.3b9658cf19820ba5b196.js","contact/recovery-support-v1.3b9658cf19820ba5b196.js.map"],"contact/recovery-support-v2":["contact/recovery-support-v2.6b076d1b72ce8df904b5.js","contact/recovery-support-v2.6b076d1b72ce8df904b5.js.map"],"contact/sidebar":["contact/sidebar.f656df78b2091c8da4d8.js","contact/sidebar.f656df78b2091c8da4d8.js.map"],"debug/badstatus":["debug/badstatus.1de5094f3e6a9b99c36d.js","debug/badstatus.1de5094f3e6a9b99c36d.js.map"],"debug/detail":["debug/detail.776dd808fa58d32672a7.js","debug/detail.776dd808fa58d32672a7.js.map"],"debug/failcomponent":["debug/failcomponent.ae7923483c75cca10fdf.js","debug/failcomponent.ae7923483c75cca10fdf.js.map"],"dev/choose-template":["dev/choose-template.0b7cf2c2179df20d3fe7.js","dev/choose-template.0b7cf2c2179df20d3fe7.js.map"],"dsr/dsr-export":["dsr/dsr-export.79524fae1e1d404b8626.js","dsr/dsr-export.79524fae1e1d404b8626.js.map"],"egg/egg":["egg/egg.d344471ef4f8a3a4b35e.js","egg/egg.d344471ef4f8a3a4b35e.js.map"],"errors/bad-request":["errors/bad-request.04f47df3f894a59d2ba8.js","errors/bad-request.04f47df3f894a59d2ba8.js.map"],"errors/not-found":["errors/not-found.d30e6bf9e464ad027451.js","errors/not-found.d30e6bf9e464ad027451.js.map"],"errors/server":["errors/server.4a0b63df0ef09bc42ed0.js","errors/server.4a0b63df0ef09bc42ed0.js.map"],"errors/tea-pot":["errors/tea-pot.02c8f951700ed9cca39e.js","errors/tea-pot.02c8f951700ed9cca39e.js.map"],"errors/template":["errors/template.39d816e653eb9347d070.js","errors/template.39d816e653eb9347d070.js.map"],"flatpage/flatpage":["flatpage/flatpage.50d707cbe94bd794d7ad.js","flatpage/flatpage.50d707cbe94bd794d7ad.js.map"],"homepage/homepage":["homepage/homepage.94c4cd79e3f3b0cf698f.js","homepage/homepage.94c4cd79e3f3b0cf698f.js.map"],"homepage/homepage-logged-in":["homepage/homepage-logged-in.6e266a3860a707cb4f8b.js","homepage/homepage-logged-in.6e266a3860a707cb4f8b.js.map"],"orgs/create":["orgs/create.d00b894dfeff60f6f09a.js","orgs/create.d00b894dfeff60f6f09a.js.map"],"orgs/detail":["orgs/detail.e51c4b342f71b8f536f5.js","orgs/detail.e51c4b342f71b8f536f5.js.map"],"orgs/invite":["orgs/invite.e3c8b2c22c5bd2d2301c.js","orgs/invite.e3c8b2c22c5bd2d2301c.js.map"],"orgs/tfa-enforced":["orgs/tfa-enforced.7d10b30d6fb9f85a4b9d.js","orgs/tfa-enforced.7d10b30d6fb9f85a4b9d.js.map"],"orgs/upgrade":["orgs/upgrade.73eb828ed46f63a37de5.js","orgs/upgrade.73eb828ed46f63a37de5.js.map"],"package-list/package-list":["package-list/package-list.03a9b00f029a35abc59b.js","package-list/package-list.03a9b00f029a35abc59b.js.map"],"package/delete-package":["package/delete-package.0e8a8d4066805ee37ba1.js","package/delete-package.0e8a8d4066805ee37ba1.js.map"],"package/deprecate-package":["package/deprecate-package.7c2b91a268103f716f57.js","package/deprecate-package.7c2b91a268103f716f57.js.map"],"package/error-message-package":["package/error-message-package.fb56c6df5c7fa8925b71.js","package/error-message-package.fb56c6df5c7fa8925b71.js.map"],"package/package":["package/package.0958c68d54da31c5d875.js","package/package.0958c68d54da31c5d875.js.map"],"profile/profile":["profile/profile.d1f12ab781523e122fd9.js","profile/profile.d1f12ab781523e122fd9.js.map"],"recovery-codes/show":["recovery-codes/show.2e2849d510004b535268.js","recovery-codes/show.2e2849d510004b535268.js.map"],"search/search":["search/search.634d21be6ef9c38ffbf7.js","search/search.634d21be6ef9c38ffbf7.js.map"],"searchv2/search":["searchv2/search.7547af08116f24d09906.js","searchv2/search.7547af08116f24d09906.js.map"],"settings/change-password":["settings/change-password.65293989a2bf07659fab.js","settings/change-password.65293989a2bf07659fab.js.map"],"settings/delete-account":["settings/delete-account.18f07696dc2142a3f122.js","settings/delete-account.18f07696dc2142a3f122.js.map"],"settings/email":["settings/email.99e7dcdb2b503c6f65b4.js","settings/email.99e7dcdb2b503c6f65b4.js.map"],"settings/memberships":["settings/memberships.a94ffe24356097b24e34.js","settings/memberships.a94ffe24356097b24e34.js.map"],"settings/packages":["settings/packages.dc2ed426ee6f9ab953c7.js","settings/packages.dc2ed426ee6f9ab953c7.js.map"],"settings/profile":["settings/profile.7407d2dea9a5e81b6f81.js","settings/profile.7407d2dea9a5e81b6f81.js.map"],"teams/create":["teams/create.4645f75c4a163e383c1c.js","teams/create.4645f75c4a163e383c1c.js.map"],"teams/detail":["teams/detail.1737f413ba412903a31e.js","teams/detail.1737f413ba412903a31e.js.map"],"teams/list":["teams/list.675e3d846dadd45bd975.js","teams/list.675e3d846dadd45bd975.js.map"],"teams/packages":["teams/packages.17ceed80b4b2f15d9fdf.js","teams/packages.17ceed80b4b2f15d9fdf.js.map"],"teams/users":["teams/users.30c74e91a221032a77d5.js","teams/users.30c74e91a221032a77d5.js.map"],"tfa/additional-options":["tfa/additional-options.925102a4f64d5f0e7ee9.js","tfa/additional-options.925102a4f64d5f0e7ee9.js.map"],"tfa/enable":["tfa/enable.3c6779277e8c1b22cd8c.js","tfa/enable.3c6779277e8c1b22cd8c.js.map"],"tfa/list":["tfa/list.1aff1464b6de13b88bc7.js","tfa/list.1aff1464b6de13b88bc7.js.map"],"tfa/recovery-codes":["tfa/recovery-codes.a3d212fbca5e1d5340bf.js","tfa/recovery-codes.a3d212fbca5e1d5340bf.js.map"],"tfa/security-key-list":["tfa/security-key-list.f2bbb09dc97c41c81d5f.js","tfa/security-key-list.f2bbb09dc97c41c81d5f.js.map"],"tfa/showTFAQRCode":["tfa/showTFAQRCode.cd5cd1f111367ad58d80.js","tfa/showTFAQRCode.cd5cd1f111367ad58d80.js.map"],"tfa/showTFASuccess":["tfa/showTFASuccess.592bef5c6a6c29198c44.js","tfa/showTFASuccess.592bef5c6a6c29198c44.js.map"],"tfa/tfa-disable":["tfa/tfa-disable.f34ee1512688be89995a.js","tfa/tfa-disable.f34ee1512688be89995a.js.map"],"tfa/tfa-mode-selection":["tfa/tfa-mode-selection.914596b0b39aa7ebbc4b.js","tfa/tfa-mode-selection.914596b0b39aa7ebbc4b.js.map"],"tfa/tfa-password-entry":["tfa/tfa-password-entry.e60eb4b2d9189606ec34.js","tfa/tfa-password-entry.e60eb4b2d9189606ec34.js.map"],"tfa/totp":["tfa/totp.74c4cb8a9e68a54db72c.js","tfa/totp.74c4cb8a9e68a54db72c.js.map"],"tokens/create":["tokens/create.5414ff94251c848dc901.js","tokens/create.5414ff94251c848dc901.js.map"],"tokens/create-gat":["tokens/create-gat.8513abe99617319bfa23.js","tokens/create-gat.8513abe99617319bfa23.js.map"],"tokens/gat-details":["tokens/gat-details.a1f7e70ebc8f3250d165.js","tokens/gat-details.a1f7e70ebc8f3250d165.js.map"],"tokens/gat/allowed-ip-ranges-input":["tokens/gat/allowed-ip-ranges-input.791f1c60453a65ee7b82.js","tokens/gat/allowed-ip-ranges-input.791f1c60453a65ee7b82.js.map"],"tokens/gat/constants":["tokens/gat/constants.c1d240b65fa21a482335.js","tokens/gat/constants.c1d240b65fa21a482335.js.map"],"tokens/gat/divider":["tokens/gat/divider.8a57d4da9e05b7d8d11b.js","tokens/gat/divider.8a57d4da9e05b7d8d11b.js.map"],"tokens/gat/expiration-days-input":["tokens/gat/expiration-days-input.7c4acaaf2847fbaa5c43.js","tokens/gat/expiration-days-input.7c4acaaf2847fbaa5c43.js.map"],"tokens/gat/gat-expiration":["tokens/gat/gat-expiration.8723ab9bd6b760a18a08.js","tokens/gat/gat-expiration.8723ab9bd6b760a18a08.js.map"],"tokens/gat/gat-input":["tokens/gat/gat-input.880fdad4cd129763ed91.js","tokens/gat/gat-input.880fdad4cd129763ed91.js.map"],"tokens/gat/organizations-input":["tokens/gat/organizations-input.31a089d45205c4df7d63.js","tokens/gat/organizations-input.31a089d45205c4df7d63.js.map"],"tokens/gat/organizations-section":["tokens/gat/organizations-section.5000e95cd864cd836844.js","tokens/gat/organizations-section.5000e95cd864cd836844.js.map"],"tokens/gat/packages-and-scopes-input":["tokens/gat/packages-and-scopes-input.f529abc764ac172688e8.js","tokens/gat/packages-and-scopes-input.f529abc764ac172688e8.js.map"],"tokens/gat/packages-and-scopes-section":["tokens/gat/packages-and-scopes-section.f40d2902fea20d2e8dfd.js","tokens/gat/packages-and-scopes-section.f40d2902fea20d2e8dfd.js.map"],"tokens/gat/permissions-input":["tokens/gat/permissions-input.9187d368a61870ca6756.js","tokens/gat/permissions-input.9187d368a61870ca6756.js.map"],"tokens/gat/section":["tokens/gat/section.22e3e32d4745b51dc57c.js","tokens/gat/section.22e3e32d4745b51dc57c.js.map"],"tokens/gat/section-heading":["tokens/gat/section-heading.6a97c6f3a22e91f123c7.js","tokens/gat/section-heading.6a97c6f3a22e91f123c7.js.map"],"tokens/gat/selected-items":["tokens/gat/selected-items.f48fcf5071f15400da12.js","tokens/gat/selected-items.f48fcf5071f15400da12.js.map"],"tokens/gat/utils":["tokens/gat/utils.a81a368fd699d790cc83.js","tokens/gat/utils.a81a368fd699d790cc83.js.map"],"tokens/generate-token":["tokens/generate-token.f42fe92aeb2b0da3d8db.js","tokens/generate-token.f42fe92aeb2b0da3d8db.js.map"],"tokens/list":["tokens/list.70431312b6a70e600c2e.js","tokens/list.70431312b6a70e600c2e.js.map"],"vouchers/view":["vouchers/view.617c38480b3a48c14719.js","vouchers/view.617c38480b3a48c14719.js.map"]},"hash":"b79be12adf7a5316de1e","name":"profile/profile","containerId":"app","headerName":"x-spiferack","publicPath":"https://static-production.npmjs.com/"}</script><script crossorigin="anonymous" src="https://static-production.npmjs.com/commons.b79be12adf7a5316de1e.js"></script> <script crossorigin="anonymous" src="https://static-production.npmjs.com/minicssextractbug.d20b6beec9f84f3c51f4.js"></script> <script crossorigin="anonymous" src="https://static-production.npmjs.com/profile/profile.d1f12ab781523e122fd9.js"></script> </body> </html>