# require-main-filename[](https://travis-ci.org/yargs/require-main-filename)[](https://coveralls.io/r/yargs/require-main-filename?branch=master)[](https://www.npmjs.com/package/require-main-filename)`require.main.filename` is great for figuring out the entrypoint for the current application. This can be combined with a module like[pkg-conf](https://www.npmjs.com/package/pkg-conf) to, _as if by magic_, loadtop-level configuration.Unfortunately, `require.main.filename` sometimes fails when an application isexecuted with an alternative process manager, e.g., [iisnode](https://github.com/tjanczuk/iisnode).`require-main-filename` is a shim that addresses this problem.## Usage```jsvarmain=require('require-main-filename')()// use main as an alternative to require.main.filename.```## LicenseISC