{"id":26775524,"url":"https://github.com/n4bb12/philemon","last_synced_at":"2025-07-15T06:33:11.079Z","repository":{"id":55550658,"uuid":"143518710","full_name":"n4bb12/philemon","owner":"n4bb12","description":"🍍 Run npm scripts like yarn","archived":false,"fork":false,"pushed_at":"2020-12-22T13:40:53.000Z","size":16,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-07-03T14:10:05.872Z","etag":null,"topics":["args","npm","run","scripts","short","yarn"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/n4bb12.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-04T10:13:42.000Z","updated_at":"2020-07-10T22:02:16.000Z","dependencies_parsed_at":"2022-08-15T03:00:53.515Z","dependency_job_id":null,"html_url":"https://github.com/n4bb12/philemon","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/n4bb12/philemon","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/n4bb12%2Fphilemon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/n4bb12%2Fphilemon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/n4bb12%2Fphilemon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/n4bb12%2Fphilemon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/n4bb12","download_url":"https://codeload.github.com/n4bb12/philemon/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/n4bb12%2Fphilemon/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265413890,"owners_count":23760891,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["args","npm","run","scripts","short","yarn"],"created_at":"2025-03-29T03:18:48.467Z","updated_at":"2025-07-15T06:33:11.042Z","avatar_url":"https://github.com/n4bb12.png","language":"JavaScript","readme":"\u003ch1 align=\"center\"\u003e\n  \u003cimg alt=\"Logo\" src=\"https://image.flaticon.com/icons/svg/826/826934.svg\" height=\"48\"\u003e\n  Philemon\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  Shortens \u003ccode\u003enpm\u003c/code\u003e commands to mimic how \u003ccode\u003eyarn\u003c/code\u003e runs scripts\n\u003c/p\u003e\n\n\u003ccenter\u003e\n  \u003ctable style=\"border: 2px solid red\"\u003e\n    \u003ctr\u003e\n      \u003ctd border=\"0\"\u003e\n        \u003ci\u003e\n          Philemon is a short and very interesting story. I prefer my npm commands to be just as short. \u003ca href=\"https://www.bibleserver.com/text/ESV/Philemon1\"\u003eWho's Philemon?\u003c/a\u003e\n        \u003c/i\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/table\u003e\n\u003c/center\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003c!-- \u003ca href=\"https://circleci.com/gh/n4bb12/workflows/philemon\"\u003e\n    \u003cimg alt=\"CircleCI\" src=\"https://flat.badgen.net/circleci/github/n4bb12/philemon?icon=circleci\"\u003e\n  \u003c/a\u003e --\u003e\n  \u003ca href=\"https://www.npmjs.com/package/philemon\"\u003e\n    \u003cimg alt=\"Version\" src=\"https://flat.badgen.net/npm/v/philemon?icon=npm\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://raw.githubusercontent.com/n4bb12/philemon/master/LICENSE\"\u003e\n    \u003cimg alt=\"License\" src=\"https://flat.badgen.net/github/license/n4bb12/philemon?icon=github\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/n4bb12/philemon/issues/new/choose\"\u003e\n    \u003cimg alt=\"Issues\" src=\"https://flat.badgen.net/badge/github/create issue/pink?icon=github\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## Why\n\n### npm / pnpm\n\nScripts need to be prefixed with `run` (with few exceptions) and arguments need to be separated with double dashes:\n```\nnpm run lint -- --help\n```\n\nUnfortunately `npx` only runs bins but doesn't improve scripts.\n\nDocs: https://docs.npmjs.com/cli/run-script\n\n### Yarn\n\nYarn is more concise and allows directly running scripts and passing arguments:\n```\nyarn lint --help\n```\n\nDocs: https://yarnpkg.com/lang/en/docs/cli/run\n\n### Conclusion\n\nTo use npm with the same brevity as Yarn, use Philemon as a wrapper.\n\n## Install\n\n```\nnpm i -g philemon\n```\n\nAlias npm/pnpm to run through Philemon:\n\n```\nalias npm=\"philemon npm\"\nalias pnpm=\"philemon pnpm\"\n```\n\n## Usage\n\nDepending on your alias you can now use npm with the short syntax:\n\n```\nnpm lint --help\n```\n\nBuilt-in commands are preserved:\n\n```\nnpm bin\nnpm -v\n```\n\n#\n\nLogo made by \u003ca href=\"http://www.freepik.com\" title=\"Freepik\"\u003eFreepik\u003c/a\u003e from \u003ca href=\"https://www.flaticon.com/free-icon/pineapple_826934\" title=\"Flaticon\"\u003ewww.flaticon.com\u003c/a\u003e is licensed by \u003ca href=\"http://creativecommons.org/licenses/by/3.0/\" title=\"Creative Commons BY 3.0\" target=\"_blank\"\u003eCC 3.0 BY\u003c/a\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fn4bb12%2Fphilemon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fn4bb12%2Fphilemon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fn4bb12%2Fphilemon/lists"}