vimeo2bunny 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +45 -17
  2. package/package.json +5 -5
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # vimeo2bunny
2
2
 
3
- Migrate videos from Vimeo to [Bunny.net Stream](https://bunny.net/stream/). Videos transfer directly from Vimeo to Bunny via URL fetch — nothing is downloaded to your machine.
3
+ Migrate videos from Vimeo to [bunny.net Stream](https://bunny.net/stream/). Videos transfer directly from Vimeo to bunny.net via URL fetch — nothing is downloaded to your machine.
4
4
 
5
5
  ## Quick Start
6
6
 
@@ -39,19 +39,29 @@ npm link # makes `vimeo2bunny` available globally
39
39
 
40
40
  ## Setup
41
41
 
42
- You need API credentials from both Vimeo and Bunny.net.
42
+ You need API credentials from both Vimeo and bunny.net.
43
43
 
44
44
  ### 1. Get your Vimeo access token
45
45
 
46
- 1. Go to the [Vimeo Developer Portal](https://developer.vimeo.com/apps)
47
- 2. Create or select an app
48
- 3. Generate an access token with scopes: `public`, `private`, `video_files`
49
-
50
- > **Note:** A Vimeo Standard or Advanced plan is required for download links.
51
-
52
- ### 2. Get your Bunny Stream credentials
53
-
54
- 1. Log in to [Bunny.net](https://panel.bunny.net)
46
+ 1. Go to the [Vimeo Developer Portal](https://developer.vimeo.com/apps) and log in
47
+ 2. Click **Create an app** (or select an existing one)
48
+ - Enter any app name avoid including "Vimeo" in the name as it will be rejected
49
+ - Add a brief description (e.g. "Video migration tool")
50
+ - Select **No** for "Will people besides you be able to access your app?"
51
+ - Accept the terms and click **Create App**
52
+ 3. On your new app's page, go to the **Authentication** section in the left sidebar
53
+ 4. Under **Generate an access token**, select **Authenticated (you)** and check these scopes:
54
+ - **Public** (required, pre-selected)
55
+ - **Private**
56
+ - **Video Files**
57
+ 5. Click **Generate** — your personal access token will appear under **Personal Access Tokens**
58
+ 6. Copy the token immediately; you won't be able to see it again
59
+
60
+ > **Note:** The **Video Files** scope requires a paid Vimeo plan (**Standard** or above). Without it, the tool cannot access download links.
61
+
62
+ ### 2. Get your bunny.net Stream credentials
63
+
64
+ 1. Log in to [bunny.net](https://panel.bunny.net)
55
65
  2. Open your Stream library → **API** section
56
66
  3. Copy the **Library ID** and **Library API Key**
57
67
 
@@ -63,7 +73,7 @@ You need API credentials from both Vimeo and Bunny.net.
63
73
  vimeo2bunny config
64
74
  ```
65
75
 
66
- You'll be prompted for your Vimeo token, Bunny Library ID, and Bunny API key.
76
+ You'll be prompted for your Vimeo token, bunny.net Library ID, and bunny.net API key.
67
77
 
68
78
  Alternatively, set environment variables (or use a `.env` file):
69
79
 
@@ -111,14 +121,14 @@ vimeo2bunny status
111
121
  ## How It Works
112
122
 
113
123
  1. **Discover** — Fetches all videos and folders from your Vimeo account
114
- 2. **Map folders** — Creates Bunny collections matching your Vimeo folder structure
115
- 3. **Transfer** — For each video, gets a download URL from Vimeo and sends it to Bunny's fetch endpoint. Bunny downloads directly from Vimeo.
116
- 4. **Metadata** — Copies title, description, and tags to the Bunny video
124
+ 2. **Map folders** — Creates bunny.net collections matching your Vimeo folder structure
125
+ 3. **Transfer** — For each video, gets a download URL from Vimeo and sends it to bunny.net's fetch endpoint. bunny.net downloads directly from Vimeo.
126
+ 4. **Metadata** — Copies title, description, and tags to the bunny.net video
117
127
  5. **Track** — Saves progress to `~/.vimeo2bunny/migration-state.json` so migrations can be resumed
118
128
 
119
129
  ### What gets migrated
120
130
 
121
- | Vimeo | Bunny | Notes |
131
+ | Vimeo | bunny.net | Notes |
122
132
  |-------|-------|-------|
123
133
  | `name` | `title` | Direct mapping |
124
134
  | `description` | `metaTags[description]` | Stored as meta tag |
@@ -127,12 +137,30 @@ vimeo2bunny status
127
137
 
128
138
  ## Troubleshooting
129
139
 
130
- **"No download link available"** — Your Vimeo plan must be Standard or Advanced to access download links.
140
+ **"No download link available"** — Your Vimeo plan must be **Standard** or above to access download links.
131
141
 
132
142
  **"URL expired"** — Vimeo download URLs expire after 24 hours. The tool fetches fresh URLs, but very long pauses may require restarting.
133
143
 
134
144
  **"Rate limited"** — Handled automatically with exponential backoff. No action needed.
135
145
 
146
+ ## Legal Notice
147
+
148
+ This tool is provided as-is under the MIT License. It is not affiliated with, endorsed by, or sponsored by Vimeo, Inc.
149
+
150
+ "Vimeo" is a registered trademark of Vimeo, Inc. Use of the name is purely descriptive and refers to the service this tool interacts with.
151
+
152
+ ### Your Responsibilities
153
+
154
+ By using this tool, you acknowledge and agree that:
155
+
156
+ - **You are migrating your own content.** You must have the legal right to download and transfer any videos you migrate. Do not use this tool to access or transfer content you do not own or have authorization to move.
157
+ - **You are responsible for compliance with Vimeo's terms.** This includes Vimeo's Terms of Service, API License Addendum, and any plan-specific restrictions. You are using your own Vimeo API credentials and acting on your own behalf.
158
+ - **You are responsible for compliance with all applicable laws,** including copyright and data protection regulations in your jurisdiction.
159
+
160
+ bunny.net provides this tool for convenience only and makes no representations regarding its compatibility with Vimeo's terms of service, which may change at any time. bunny.net assumes no liability for any consequences arising from your use of this tool, including but not limited to account suspension or termination by Vimeo.
161
+
162
+ If you are unsure whether your use case complies with Vimeo's terms, consult Vimeo's documentation or seek legal advice before proceeding.
163
+
136
164
  ## License
137
165
 
138
166
  MIT — see [LICENSE](LICENSE)
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vimeo2bunny",
3
- "version": "1.0.0",
4
- "description": "CLI tool to migrate videos from Vimeo to Bunny.net Stream",
3
+ "version": "1.0.2",
4
+ "description": "CLI tool to migrate videos from Vimeo to bunny.net Stream",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
7
7
  "vimeo2bunny": "dist/index.js"
@@ -47,13 +47,13 @@
47
47
  "url": "https://github.com/BunnyWay/vimeo2bunny/issues"
48
48
  },
49
49
  "dependencies": {
50
+ "@inquirer/prompts": "^7.10.1",
50
51
  "axios": "^1.6.0",
51
52
  "chalk": "^4.1.2",
52
53
  "cli-progress": "^3.12.0",
53
54
  "commander": "^11.1.0",
54
55
  "conf": "^10.2.0",
55
56
  "dotenv": "^16.3.1",
56
- "@inquirer/prompts": "^3.3.0",
57
57
  "ora": "^5.4.1",
58
58
  "zod": "^3.22.0"
59
59
  },
@@ -64,8 +64,8 @@
64
64
  "@types/cli-progress": "^3.11.5",
65
65
  "@types/node": "^20.10.0",
66
66
  "@yao-pkg/pkg": "^5.12.0",
67
- "typescript": "^5.3.2",
68
- "ts-node": "^10.9.2"
67
+ "ts-node": "^10.9.2",
68
+ "typescript": "^5.3.2"
69
69
  },
70
70
  "engines": {
71
71
  "node": ">=18.0.0"