{"id":18467931,"url":"https://github.com/pradeep-selva/hardhat-nodemon","last_synced_at":"2025-10-09T18:08:27.522Z","repository":{"id":47351356,"uuid":"504850879","full_name":"Pradeep-selva/hardhat-nodemon","owner":"Pradeep-selva","description":"A Nodemon kind of experience with hardhat.","archived":false,"fork":false,"pushed_at":"2022-10-28T04:34:35.000Z","size":570,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-23T10:51:10.348Z","etag":null,"topics":["ethereum","evm","ganache","hardhat","hardhat-plugin","hevm","hound","nodemon","npm","npm-package","smart-contracts","solidity","typescript","watch"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/hardhat-nodemon","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Pradeep-selva.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2022-06-18T13:26:24.000Z","updated_at":"2022-12-10T00:49:21.000Z","dependencies_parsed_at":"2022-08-29T04:31:37.412Z","dependency_job_id":null,"html_url":"https://github.com/Pradeep-selva/hardhat-nodemon","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pradeep-selva%2Fhardhat-nodemon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pradeep-selva%2Fhardhat-nodemon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pradeep-selva%2Fhardhat-nodemon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pradeep-selva%2Fhardhat-nodemon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Pradeep-selva","download_url":"https://codeload.github.com/Pradeep-selva/hardhat-nodemon/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247824077,"owners_count":21002201,"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":["ethereum","evm","ganache","hardhat","hardhat-plugin","hevm","hound","nodemon","npm","npm-package","smart-contracts","solidity","typescript","watch"],"created_at":"2024-11-06T10:04:01.653Z","updated_at":"2025-10-09T18:08:22.485Z","avatar_url":"https://github.com/Pradeep-selva.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eHardhat Nodemon\u003c/h1\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003cstrong\u003eA Nodemon kind of experience with hardhat.\u003c/strong\u003e\n  \u003cbr/\u003e\n  \u003cp\u003eThis is a hardhat plugin that aims at providing a hassle free experience with hardhat, where you can run compile / test once, and watch for changes to recompile automatically, eliminating the manual recompilation / retesting workflow.\u003c/p\u003e\n\u003c/div\u003e\n\n---\n\n## Demo\n\n![demo](https://raw.githubusercontent.com/Pradeep-selva/hardhat-nodemon/master/demo.gif?token=GHSAT0AAAAAABJORISFY2HIOY4N7RW4G7XWYVOOOIQ)\n\n---\n\n## Installation\n\n1. To install via npm, use --\n\n   `npm i --save-dev hardhat-nodemon`\n\n   (or)\n\n   `yarn add -D hardhat-nodemon`\n\n2. To run locally,\n\n   - Clone repo\n   - Run `yarn`\n   - Run `npm link`\n   - Run `npm link hardhat-nodemon` wherever you wish to use\n\n**NOTE: This requires at least Node Version \u003e= 14.17.0**\n\n## Usage\n\nAfter installation, add the following line to your `hardhat.config.ts` --\n\n```\nimport \"hardhat-nodemon\";\n```\n\nin order to extend hardhat with this plugin.\n\n## Features\n\n1. **Compile:**\n\n   - A flag `--watch` is provided to `compile` to watch for contract changes to re-compile.\n   - 2 additional helper options are also provided --\n\n     **only:**\n\n     - This accepts a string of contract names, separated by comma (,)\n     - Only these contracts are watched for compilation\n\n     - eg: `npx hardhat compile watch --only \"Sample.sol, Sample2.sol\"`\n\n     **except:**\n\n     - This accepts a string of contract names, separated by comma (,)\n     - Only these contracts are not watched for compilation\n\n     - eg: `npx hardhat compile watch --except \"Sample.sol, Sample2.sol\"`\n\n   - Run `npx hardhat compile --help` for more details.\n\n   ```\n   npx hardhat compile --help\n    Hardhat version 2.9.1\n\n    Usage: hardhat [GLOBAL OPTIONS] compile [--except \u003cSTRING\u003e] [--force] [--no-size-contracts] [--no-typechain] [--only \u003cSTRING\u003e] [--quiet] [--watch]\n\n    OPTIONS:\n\n    --except           \tA list of contracts to ignore while watching for compilation, separated by commas (.sol files) (default: \"\")\n    --force            \tForce compilation ignoring cache\n    --no-typechain     \tSkip Typechain compilation\n    --only             \tA list of contracts to watch for compilation, separated by commas (.sol files) (default: \"\")\n    --quiet            \tMakes the compilation process less verbose\n    --watch            \tWatch changes in contract files\n\n    compile: Compiles the entire project, building all artifacts\n\n    For global options help run: hardhat help\n   ```\n\n2. **Test:**\n\n   - A flag `--watch` is provided to `test` to watch for tests / contracts changes to re-compile.\n   - It inherits all features of the base `test` but extends it with watching capabilities for both test files and solidity contracts.\n\n   - Run `npx hardhat test --help` for more details.\n\n   ```\n   npx hardhat test --help\n    Hardhat version 2.9.1\n\n    Usage: hardhat [GLOBAL OPTIONS] test [--bail] --grep \u003cSTRING\u003e [--no-compile] [--parallel] [--watch] [...testFiles]\n\n    OPTIONS:\n\n    --bail      \tStop running tests after the first test failure\n    --grep      \tOnly run tests matching the given string or regexp\n    --no-compile\tDon't compile before running this task\n    --parallel  \tRun tests in parallel\n    --watch     \tWatch changes in files used in test (from testDir of config)\n\n    POSITIONAL ARGUMENTS:\n\n    testFiles\tAn optional list of files to test (default: [])\n\n    test: Runs mocha tests\n\n    For global options help run: hardhat help\n   ```\n\n3. **Extended Config:**\n\n   - `hardhat.config.ts` accepts a config of `compilerWatcher` which takes --\n\n   ```js\n   {\n     noCompile?: boolean;\n     compileDir?: string;\n     testDir?: string;\n   }\n   ```\n\n   - By default the values are --\n\n   ```js\n   {\n     noCompile: false;\n     compileDir: \"contracts\";\n     testDir: \"test\";\n   }\n   ```\n\n   - This can mainly be used to define compilation flow at start, directory where contracts are stored and directory where tests are stored.\n\n## License\n\n[MIT](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpradeep-selva%2Fhardhat-nodemon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpradeep-selva%2Fhardhat-nodemon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpradeep-selva%2Fhardhat-nodemon/lists"}