{"id":41915907,"url":"https://github.com/nperez0111/wol-server","last_synced_at":"2026-01-25T16:23:10.924Z","repository":{"id":34915883,"uuid":"189853936","full_name":"nperez0111/wol-server","owner":"nperez0111","description":"A server to send WOL commands and shutdown your computer","archived":false,"fork":false,"pushed_at":"2023-01-03T23:16:19.000Z","size":1388,"stargazers_count":3,"open_issues_count":19,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-10-11T01:05:57.443Z","etag":null,"topics":["home-automation","raspberry-pi","server","shutdown","wake-on-lan","wol"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nperez0111.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-06-02T14:06:19.000Z","updated_at":"2023-08-22T15:33:22.000Z","dependencies_parsed_at":"2023-01-15T10:20:50.816Z","dependency_job_id":null,"html_url":"https://github.com/nperez0111/wol-server","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/nperez0111/wol-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nperez0111%2Fwol-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nperez0111%2Fwol-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nperez0111%2Fwol-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nperez0111%2Fwol-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nperez0111","download_url":"https://codeload.github.com/nperez0111/wol-server/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nperez0111%2Fwol-server/sbom","scorecard":{"id":696131,"data":{"date":"2025-08-11","repo":{"name":"github.com/nperez0111/wol-server","commit":"8b26f27d2e066000775889fe96ad8085f01f508b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":1.2,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: Dockerfile:1: pin your Docker image by updating node:12-alpine to node:12-alpine@sha256:d4b15b3d48f42059a15bd659be60afe21762aae9d6cbea6f124440895c27db68","Warn: containerImage not pinned by hash: raspberrypi/Dockerfile:1: pin your Docker image by updating node:8-jessie to node:8-jessie@sha256:d9400201f4832afa5717f4ff20b8d5822e32ca14b87cfb1e5b4d95d3446b885c","Warn: npmCommand not pinned by hash: Dockerfile:7","Warn: npmCommand not pinned by hash: raspberrypi/Dockerfile:7","Info:   0 out of   2 containerImage dependencies pinned","Info:   0 out of   2 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":0,"reason":"79 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-6chw-6frg-f759","Warn: Project is vulnerable to: GHSA-v88g-cgmw-v5xw","Warn: Project is vulnerable to: GHSA-93q8-gq69-wqmw","Warn: Project is vulnerable to: GHSA-fwr7-v2mv-hh25","Warn: Project is vulnerable to: GHSA-4w2v-q235-vp99","Warn: Project is vulnerable to: GHSA-cph5-m8f7-6c5x","Warn: Project is vulnerable to: GHSA-wf5p-g6vw-rhxx","Warn: Project is vulnerable to: GHSA-jr5f-v2jv-69x6","Warn: Project is vulnerable to: GHSA-qwcr-r2fm-qrc7","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-pxg6-pf52-xh8x","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-gxpj-cx7g-858c","Warn: Project is vulnerable to: GHSA-w573-4hg7-7wgq","Warn: Project is vulnerable to: GHSA-9j49-mfvp-vmhm","Warn: Project is vulnerable to: GHSA-ff7x-qrg7-qggm","Warn: Project is vulnerable to: GHSA-3gx7-xhv7-5mx3","Warn: Project is vulnerable to: GHSA-rv95-896h-c2vc","Warn: Project is vulnerable to: GHSA-qw6h-vgh9-j6wx","Warn: Project is vulnerable to: GHSA-74fj-2j2h-c42q","Warn: Project is vulnerable to: GHSA-pw2r-vq6v-hr8c","Warn: Project is vulnerable to: GHSA-jchw-25xp-jwwc","Warn: Project is vulnerable to: GHSA-cxjh-pqwp-8mfp","Warn: Project is vulnerable to: GHSA-8r6j-v8pm-fqw3","Warn: Project is vulnerable to: MAL-2023-462","Warn: Project is vulnerable to: GHSA-ww39-953v-wcq6","Warn: Project is vulnerable to: GHSA-pfrx-2q88-qq97","Warn: Project is vulnerable to: GHSA-43f8-2h32-f4cj","Warn: Project is vulnerable to: GHSA-rc47-6667-2j5j","Warn: Project is vulnerable to: GHSA-pc5p-h8pf-mvwp","Warn: Project is vulnerable to: GHSA-qqgx-2p2h-9c37","Warn: Project is vulnerable to: GHSA-78xj-cgh5-2h22","Warn: Project is vulnerable to: GHSA-2p57-rm9w-gvfp","Warn: Project is vulnerable to: GHSA-9c47-m6qq-7p4h","Warn: Project is vulnerable to: GHSA-6c8f-qphg-qjgp","Warn: Project is vulnerable to: GHSA-jf85-cpcp-j695","Warn: Project is vulnerable to: GHSA-p6mc-m468-83gw","Warn: Project is vulnerable to: GHSA-29mw-wpgm-hmr9","Warn: Project is vulnerable to: GHSA-35jh-r3h4-6jhm","Warn: Project is vulnerable to: GHSA-h726-x36v-rx45","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3","Warn: Project is vulnerable to: GHSA-vh95-rmgr-6w4m","Warn: Project is vulnerable to: GHSA-xvch-5gv4-984h","Warn: Project is vulnerable to: GHSA-fhjf-83wg-r2j9","Warn: Project is vulnerable to: GHSA-8hfj-j24r-96c4","Warn: Project is vulnerable to: GHSA-wc69-rhjr-hc9g","Warn: Project is vulnerable to: GHSA-56x4-j7p9-fcf9","Warn: Project is vulnerable to: GHSA-v78c-4p63-2j6c","Warn: Project is vulnerable to: GHSA-4c7m-wxvm-r7gc","Warn: Project is vulnerable to: GHSA-pch5-whg9-qr2r","Warn: Project is vulnerable to: GHSA-hj48-42vr-x3v9","Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j","Warn: Project is vulnerable to: GHSA-rhx6-c78j-4q9w","Warn: Project is vulnerable to: GHSA-x5gf-qvw8-r2rm","Warn: Project is vulnerable to: GHSA-hrpp-h998-j3pp","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-m6fv-jmcg-4jfg","Warn: Project is vulnerable to: GHSA-cm22-4g7w-348p","Warn: Project is vulnerable to: GHSA-4g88-fppr-53pp","Warn: Project is vulnerable to: GHSA-4jqc-8m5r-9rpr","Warn: Project is vulnerable to: GHSA-4rq4-32rv-6wp6","Warn: Project is vulnerable to: GHSA-64g7-mvw6-v9qj","Warn: Project is vulnerable to: GHSA-3jfq-g458-7qm9","Warn: Project is vulnerable to: GHSA-r628-mhmh-qjhw","Warn: Project is vulnerable to: GHSA-9r2w-394v-53qc","Warn: Project is vulnerable to: GHSA-5955-9wpr-37jh","Warn: Project is vulnerable to: GHSA-qq89-hq3f-393p","Warn: Project is vulnerable to: GHSA-f5x3-32g6-xq36","Warn: Project is vulnerable to: GHSA-52f5-9888-hmc6","Warn: Project is vulnerable to: GHSA-7p7h-4mm5-852v","Warn: Project is vulnerable to: GHSA-38fc-wpqx-33j7","Warn: Project is vulnerable to: GHSA-332q-7ff2-57h2","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q","Warn: Project is vulnerable to: GHSA-6fc8-4gx4-v693","Warn: Project is vulnerable to: GHSA-p9pc-299p-vxgp"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T03:45:41.328Z","repository_id":34915883,"created_at":"2025-08-22T03:45:41.328Z","updated_at":"2025-08-22T03:45:41.328Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28755250,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T13:59:49.818Z","status":"ssl_error","status_checked_at":"2026-01-25T13:59:33.728Z","response_time":113,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["home-automation","raspberry-pi","server","shutdown","wake-on-lan","wol"],"created_at":"2026-01-25T16:23:10.261Z","updated_at":"2026-01-25T16:23:10.914Z","avatar_url":"https://github.com/nperez0111.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WOL-Server\nThis tool starts up a server to wake up your machine by calling one of the routes.\n\n## Why?\nI wanted to be able to turn on and off my computer using amazon alexa. So I setup a Raspberry PI that stays on all of the time running [ha-bridge](https://github.com/bwssytems/ha-bridge) which then calls this server (which is also running on the raspberry pi). This allows me to turn on my computer using [`node_wake_on_lan`](https://github.com/agnat/node_wake_on_lan) and turn off my computer using [`stop-server`](https://github.com/typicode/stop-server) (which is running on the computer I want to turn off and on).\n\n## How does it work?\n\nAfter installing:\n```sh\n$ wol-server start\nWOL Server now running on default port 3078\n# The server is running on it's default port ready to accept requests\n```\n\nAnd I guess I do stop to stop it right? Yes.\n```sh\n$ wol-server stop\nWOL Server stopped running\n# The server is no longer running\n```\n\nI don't like that port though:\n```sh\n$ wol-server start --port 9000\nWOL Server now running on port 9000\n# The server is running on port 9000 ready to accept requests\n```\n\nI want this to run on startup!\n```sh\nsudo wol-server startup\nWOL Server now runs on startup running\n# The server will now restart on startup of the computer\n# Sudo is required because the libary I'm using (pm2) requires it\n```\n\nOk, I don't want it to run on startup anymore\n```sh\nsudo wol-server unstartup\nWOL Server no longer runs on startup\n# The server will now not restart on startup of the computer\n```\n\n## Install\n```sh\nnpm install wol-server -g\n```\n\n## Usage\nOnce you have the server running you'll have the ability to use a few routes to trigger turning on and off the computer. Here are some useful ones:\n\n### Turning on a computer with WOL Magic Packet\n\n`http://localhost:3078/wake/AA:BB:CC:DD:EE:FF`\n\nWhere `AA:BB:CC:DD:EE:FF` is the Hardware MAC address of the computer you want to turn on (note WOL only works over ethernet).\n\n### Turning off a computer that is running [`stop-server`](https://github.com/typicode/stop-server)\n\n`http://localhost:3078/192.168.1.12/sleep`\n\nTo sleep the computer at `192.168.1.12` (which I found is the only way my machine will wake up to a WOL Magic Packet but your expierence may vary).\n\n`http://localhost:3078/192.168.1.12/power-off`\n\nTo turn off the computer at the IP address `192.168.1.12` which you should definitely change.\n\n### What to do with these URLs\nPut them into [ha-bridge](https://github.com/bwssytems/ha-bridge) by:\n\n  1. Creating a new device by going to \"Home\" \u003e \"Add/Edit\" \u003e \"Add Bridge Device\"\n  2. Set \"Type\" to \"HTTP Device\" for \"On Itmes\", Put the wake URL in the \"Target Item\" section and make sure to click \"Add\" on the far right.\n  3. Set \"Type\" to \"HTTP Device\" for \"Off Itmes\", Put the sleep or power-off URL in the \"Target Item\" section and make sure to click \"Add\" on the far right.\n\n## All Routes\n| URL | Query Params | Description | Sample |\n| --- | ------------ | ----------- | ------ |\n| `wake/:macAddress` | Any valid option for [`node_wake_on_lan`](https://github.com/agnat/node_wake_on_lan) ***(all optional)*** | Sends a WOL Magic packet to the computer at `:macAddress` | `localhost:3078/wake/AA:BB:CC:DD:EE:FF` |\n| `/wake` | Same as above | Does the same as above but uses `WOL_SERVER_MAC_ADDRESS_TO_WAKE` environment variable as the macAddress | `localhost:3078/wake` |\n| `/:ipAddress/:action` | None | Used to perform `sleep` or `power-off` on [`stop-server`](https://github.com/typicode/stop-server) instance | `localhost:3078/192.168.1.12/sleep` |\n| `/remote/:action` |  `url` defaults to `WOL_SERVER_POWER_OFF_URL` environment variable if set will override all other options and send a request to that URL, `ip` the IP address to make the call to, `port` the port to make the call to on the IP defaults to `5709`, `method` the http verb method to make the call with defaults to `post` | This is call can be used to make a call to any URL | `localhost:3078/remote/sleep?ip=192.168.1.10\u0026port=5709` |\n| `/healthcheck` | None | Used to test whether the server is currently running or not | `localhost:3078/healthcheck` |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnperez0111%2Fwol-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnperez0111%2Fwol-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnperez0111%2Fwol-server/lists"}