{"id":19317083,"url":"https://github.com/henkelmax/copystation","last_synced_at":"2026-04-15T14:05:58.144Z","repository":{"id":49609988,"uuid":"287806744","full_name":"henkelmax/copystation","owner":"henkelmax","description":"Turns your Raspberry PI or PC into a copy station.","archived":false,"fork":false,"pushed_at":"2021-06-12T04:49:32.000Z","size":182,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-06T04:13:26.928Z","etag":null,"topics":["linux","node-js","nodejs","raspberry-pi","raspberrypi","raspbian","usb","windows"],"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/henkelmax.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":"2020-08-15T18:52:40.000Z","updated_at":"2022-09-24T18:04:48.000Z","dependencies_parsed_at":"2022-09-04T03:12:51.565Z","dependency_job_id":null,"html_url":"https://github.com/henkelmax/copystation","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henkelmax%2Fcopystation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henkelmax%2Fcopystation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henkelmax%2Fcopystation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henkelmax%2Fcopystation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/henkelmax","download_url":"https://codeload.github.com/henkelmax/copystation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240420940,"owners_count":19798501,"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":["linux","node-js","nodejs","raspberry-pi","raspberrypi","raspbian","usb","windows"],"created_at":"2024-11-10T01:13:38.856Z","updated_at":"2026-04-15T14:05:58.111Z","avatar_url":"https://github.com/henkelmax.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# USB Copy Station ![GitHub issues](https://img.shields.io/github/issues-raw/henkelmax/copystation) ![GitHub release (latest by date)](https://img.shields.io/github/v/release/henkelmax/copystation)\n\nTurns your Raspberry PI into a copy station.\n\nThis also works for Windows and Linux, but the status LEDs will only work with the Raspberry PIs [GPIO](https://www.raspberrypi.org/documentation/usage/gpio/) pins.\n\n## Prerequisites\n\n### For Windows\n\nDownload and install [Node.js](https://nodejs.org/).\n\nDownload and install [Yarn](https://classic.yarnpkg.com/en/docs/install/).\n\nInstall the Windows-Build-Tools:\n\n``` cmd\nnpm install --global --production windows-build-tools\n```\n\nIn the project directory run:\n\n``` cmd\nyarn install\n```\n\n### For Linux\n\nInstall Node.js and Yarn:\n\n```sh\nsudo apt-get update -y\n\nsudo apt-get install -y curl software-properties-common\n\ncurl -sL https://deb.nodesource.com/setup_10.x | sudo bash -\n\nsudo apt-get install -y nodejs npm\n\nsudo npm install --global yarn\n```\n\nFor NTFS support run:\n\n``` sh\nsudo apt-get install -y ntfs-3g\n```\n\nIn the project directory run:\n\n``` cmd\nyarn install\n```\n\n## Usage\n\n``` sh\nnode index.js [-h] [-p PATH] [-f FOLDER_NAME]\n```\n\nArgument | Description | Default\n--- | --- | ---\n`-h`, `--help` | Show help and exit. | -\n`-p PATH`, `--path PATH` | The path to the files that are getting copied | `./data/`\n`-f FOLDER_NAME`, `--folder-name FOLDER_NAME` | The name of the folder that the files are copied to | `data`\n`-s PIN`, `--success-led-pin PIN` | The pin ID of the success LED | `17`\n`-P PIN`, `--progress-led-pin PIN` | The pin ID of the progress LED | `27`\n`-e PIN`, `--error-led-pin PIN` | The pin ID of the error LED | `18`\n\n### Examples\n\n``` sh\nnode index.js --path \"./data\" --folder-name \"data\"\n\nnode index.js -p \"./data\" -f \"data\"\n```\n\n### Running with [nodemon](https://www.npmjs.com/package/nodemon)\n\n``` sh\nyarn dev --path \"./data\" --folder-name \"data\"\n```\n\n## Autostart with systemd\n\nCreate a file `/etc/systemd/system/usb-copy.service`\n\n``` service\n[Unit]\nDescription=USB Copy\nAfter=network.target\n\n[Service]\nUser=root\nEnvironment=\nWorkingDirectory=/usb-copy/\nExecStart=/usr/bin/node index.js --path \"./data\" --folder-name \"data\"\n\n[Install]\nWantedBy=multi-user.target\n```\n\n``` sh\nsudo systemctl daemon-reload\nsudo systemctl enable usb-copy\nsudo systemctl start usb-copy\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenkelmax%2Fcopystation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhenkelmax%2Fcopystation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenkelmax%2Fcopystation/lists"}