npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

rrq

v1.1.1

Published

I can specify the path require from the root directory

Downloads

1

Readme

RRQ npm version

Build Status Coverage Status

requireをルートディレクトリからの指定で呼び出せるようになります。

#before
require('../../pathTest/c/cc/c')

# after
rrq('pathTest/c/cc/c')

install

npm install rrq
touch .rrqrc

インストール後、プロジェクトルートに[.rrqrc]というファイルを作成します。空で構いません。
このファイルのある場所をルートと認識してパスを解析します。

  • ファイル名は[.rrqrc]でなくても[.rrq]で始まるものならなんでも構いません。
  • 例[.rrq][.rrqrc][.rrq.conf.yaml]等

how to use

rrq = require('rrq').require2

# use of require
c1 = require('../../pathTest/c/cc/c')
c1('c1')

# use of rrq
c2 = rrq('pathTest/c/cc/c')
c2('c2')

# get require path
requirePath = require('rrq').requirePath

cpath = requirePath(__dirname,'pathTest/c/cc/c')
console.log('require:', cpath)
c3 = require(cpath)
c3('c3')

###
c required
c1 test ok
c2 test ok
require: ../../pathTest/c/cc/c
c3 test ok
###

require2(path)

ルートディレクトリからのパスでrequireする

rrq = require('rrq').require2
# or
# rrq = require('rrq').require

# use of require
c1 = require('../../pathTest/c/cc/c')
c1('c1')

# use of rrq
c2 = rrq('pathTest/c/cc/c')
c2('c2')

requirePath(from,to)

ルートディレクトリからのパスでrequireするパスを取得する
path.relative(from, to) と同じですが、fromを__dirname、toをルートからのパスで指定できます。
第一引数は __dirnameで固定です。 path.relative(from, to)との違いは、[../]で始まるパス以外は先頭に[./]を付与します。

rq = require('rrq')
rq.requirePath(__dirname,'pathTest/c/cc/c')
# ../../pathTest/c/cc/c

projectRoot()

ルートディレクトリのパスを取得する

rq = require('rrq')
root = rq.projectRoot()
# or
# root = rq.root()

console.log root

# /Users/hoge/path/to/myProject

confpath()

プロジェクトルートに置いたファイルのパスを取得

rq = require('rrq')
conf = rq.confpath()

# このファイルに設定等を書いて読み込む時に使います
# 例
config = require('yaml-config').readConfig(conf)