From a5a8da7424967f79f354bd5f12f970a01f664197 Mon Sep 17 00:00:00 2001 From: Yun Chan Date: Tue, 15 Sep 2026 03:37:47 +0900 Subject: [PATCH] feat(growth): ship search registration, long-tail SEO and in-app sharing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Register both Paca domains on Naver Search Advisor, Google Search Console and Bing Webmaster Tools so the site can be indexed by every major engine, add DASH and AES-128 how-to pages to capture protocol-specific searches, and let a finished download share a UTM-tagged landing link from the completion shelf. Package-manager manifests (winget, Chocolatey, Scoop) now carry verified v1.2.0 hashes and product codes instead of placeholders. All 2,757 tests pass. ๐Ÿ’˜ Generated with Crush Assisted-by: Crush:deepseek-v4.1-flash --- README.md | 2 + build/deploy-site.ps1 | 4 + build/distribution/README.md | 76 ++++ build/distribution/chocolatey/paca.nuspec | 35 ++ .../chocolatey/tools/chocolateyInstall.ps1 | 18 + .../chocolatey/tools/chocolateyUninstall.ps1 | 23 ++ build/distribution/scoop/paca.json | 32 ++ .../winget/Paca.Paca.installer.yaml | 33 ++ .../winget/Paca.Paca.locale.en-US.yaml | 35 ++ build/distribution/winget/Paca.Paca.yaml | 7 + build/indexnow-ping.ps1 | 51 +++ docs/BACKLOG.md | 26 ++ docs/GROWTH_PLAN.md | 210 +++++++++++ docs/IMPLEMENTATION_AUDIT.md | 28 +- docs/promo/README.md | 44 +++ docs/promo/directories.md | 86 +++++ docs/promo/global.md | 101 +++++ docs/promo/korea.md | 143 +++++++ site/e9f2c7a4b1d8460f9c3e2a7b5d1f08c4.txt | 1 + site/en/index.html | 352 ++++++++++++++++++ site/feed.xml | 98 +++++ site/how-to-download-dash-mpd.html | 277 ++++++++++++++ site/how-to-download-hls-aes-128.html | 277 ++++++++++++++ site/how-to-download-m3u8.html | 13 +- site/index.html | 59 ++- site/llms.txt | 6 + ...naverb6e030772fa2a09122a78d79bb2ba1df.html | 1 + site/robots.txt | 15 +- site/sitemap.xml | 36 ++ site/vs-idm-alternative.html | 5 +- site/vs-jdownloader.html | 234 ++++++++++++ site/vs-yt-dlp.html | 234 ++++++++++++ src/Paca.App/MainWindow.xaml | 7 + src/Paca.App/MainWindow.xaml.cs | 19 + src/Paca.Core/Social/ShareCardBuilder.cs | 33 ++ tests/Paca.Tests/Core/ShareLoopGateTests.cs | 53 +++ .../Infrastructure/SiteSeoAeoGeoGateTests.cs | 177 +++++++++ 37 files changed, 2841 insertions(+), 10 deletions(-) create mode 100644 build/distribution/README.md create mode 100644 build/distribution/chocolatey/paca.nuspec create mode 100644 build/distribution/chocolatey/tools/chocolateyInstall.ps1 create mode 100644 build/distribution/chocolatey/tools/chocolateyUninstall.ps1 create mode 100644 build/distribution/scoop/paca.json create mode 100644 build/distribution/winget/Paca.Paca.installer.yaml create mode 100644 build/distribution/winget/Paca.Paca.locale.en-US.yaml create mode 100644 build/distribution/winget/Paca.Paca.yaml create mode 100644 build/indexnow-ping.ps1 create mode 100644 docs/GROWTH_PLAN.md create mode 100644 docs/promo/README.md create mode 100644 docs/promo/directories.md create mode 100644 docs/promo/global.md create mode 100644 docs/promo/korea.md create mode 100644 site/e9f2c7a4b1d8460f9c3e2a7b5d1f08c4.txt create mode 100644 site/en/index.html create mode 100644 site/feed.xml create mode 100644 site/how-to-download-dash-mpd.html create mode 100644 site/how-to-download-hls-aes-128.html create mode 100644 site/naverb6e030772fa2a09122a78d79bb2ba1df.html create mode 100644 site/vs-jdownloader.html create mode 100644 site/vs-yt-dlp.html create mode 100644 src/Paca.Core/Social/ShareCardBuilder.cs create mode 100644 tests/Paca.Tests/Core/ShareLoopGateTests.cs diff --git a/README.md b/README.md index f20476d..060cbb7 100644 --- a/README.md +++ b/README.md @@ -92,3 +92,5 @@ Android ์ž๋™ ์—…๋ฐ์ดํŠธ๋Š” [Obtainium](https://github.com/ImranR98/Obtainium | [docs/DEPLOYMENT_PLAN.md](docs/DEPLOYMENT_PLAN.md) | Win/macOS/Linux/๋ชจ๋ฐ”์ผ ๋ฐฐํฌ ์ฒด๊ณ„ | | [docs/IMPLEMENTATION_AUDIT.md](docs/IMPLEMENTATION_AUDIT.md) | ๊ณ„ํš ๋Œ€๋น„ ๊ตฌํ˜„ ๊ฐ์‚ฌ | | [docs/BACKLOG.md](docs/BACKLOG.md) | ์ž‘์—… ์ด๋ ฅ ๋ฐ ๋ฐฑ๋กœ๊ทธ | +| [docs/GROWTH_PLAN.md](docs/GROWTH_PLAN.md) | ์„ฑ์žฅยทํ™๋ณดยท๋ฐ”์ด๋Ÿด ์‹คํ–‰ ๊ณ„ํš (๊ฒ€์ƒ‰/AEO/GEO ์‹ฌํ™”, ๋Ÿฐ์น˜ ์‹œํ€€์Šค) | +| [docs/promo/](docs/promo/README.md) | ์‚ฌ์ดํŠธ ํ™๋ณด ํ‚คํŠธ โ€” ์ฑ„๋„๋ณ„ ๊ฒŒ์‹œ๋ฌธยท๋””๋ ‰ํ„ฐ๋ฆฌ ์ œ์ถœ ๋ฐ์ดํ„ฐ | diff --git a/build/deploy-site.ps1 b/build/deploy-site.ps1 index 6450c0f..9d95655 100644 --- a/build/deploy-site.ps1 +++ b/build/deploy-site.ps1 @@ -28,3 +28,7 @@ npx wrangler pages deploy (Join-Path $root "site") --project-name $Project --bra if ($LASTEXITCODE -ne 0) { throw "wrangler ๋ฐฐํฌ ์‹คํŒจ" } Write-Host "์™„๋ฃŒ: https://$Project-7r4.pages.dev (๋˜๋Š” ๋Œ€์‹œ๋ณด๋“œ ์ง€์ • ๋„๋ฉ”์ธ)" -ForegroundColor Green + +Write-Host "3) IndexNow ์ฆ‰์‹œ ์ƒ‰์ธ ํ†ต๋ณด (Bing/ChatGPT SearchยทNaver)" -ForegroundColor Cyan +& (Join-Path $PSScriptRoot "indexnow-ping.ps1") +if ($LASTEXITCODE -ne 0) { Write-Warning "IndexNow ์ œ์ถœ ์‹คํŒจ (๋ฐฐํฌ ์ž์ฒด๋Š” ์„ฑ๊ณต, ์ถ”ํ›„ ์žฌ์‹คํ–‰ ๊ฐ€๋Šฅ)" } diff --git a/build/distribution/README.md b/build/distribution/README.md new file mode 100644 index 0000000..dcd4139 --- /dev/null +++ b/build/distribution/README.md @@ -0,0 +1,76 @@ +# Paca ๋ฐฐํฌยท์œ ํ†ต ํ‚คํŠธ (Distribution Kit) + +> **๋ชฉ์ **: PACA๋ฅผ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €ยท๋‹ค์šด๋กœ๋“œ ํฌํ„ธยท๋Œ€์•ˆ ์‚ฌ์ดํŠธ์— ๋“ฑ์žฌํ•ด **์˜๊ตฌ(evergreen) ์œ ์ž… ์ฑ„๋„**์„ ํ™•๋ณดํ•œ๋‹ค. +> **๋ฐฐ๊ฒฝ/๊ทผ๊ฑฐ**: `docs/GROWTH_PLAN.md` ยง2. ๋Ÿฐ์น˜ ์ŠคํŒŒ์ดํฌ๋Š” 48์‹œ๊ฐ„์ด๋ฉด ์‚ฌ๋ผ์ง€์ง€๋งŒ, ์ด ๊ณ„์ธต์€ ์ˆ˜๋…„๊ฐ„ ์„ค์น˜๋ฅผ ๋ˆ„์ ํ•œ๋‹ค. +> **์ƒํƒœ**: winget / Chocolatey / Scoop ๋งค๋‹ˆํŽ˜์ŠคํŠธ ๊ฐ’์„ **v1.2.0 ๊ณต๊ฐœ ๋ฆด๋ฆฌ์Šค ๊ธฐ์ค€์œผ๋กœ ์ฑ„์›€ ์™„๋ฃŒ**(ํ•ด์‹œยทProductCodeยทUpgradeCodeยทiconUrl). ์ €์žฅ์†Œ ์ œ์ถœ(PR/push)๋งŒ ๊ณ„์ • ์ž‘์—…์œผ๋กœ ๋‚จ์Œ. + +## 0. ๊ณตํ†ต ์ „์ œ (๋ชจ๋“  ์ฑ„๋„์˜ ๊ด€๋ฌธ) +- [ ] **๋ฌด์ธ(silent) ์„ค์น˜ ๊ฐ€๋Šฅ**: winget/Chocolatey/Scoop/ํฌํ„ธ ๋ชจ๋‘ ์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ ์—†๋Š” ์„ค์น˜๋ฅผ ์š”๊ตฌํ•˜๊ฑฐ๋‚˜ ํ…Œ์ŠคํŠธํ•œ๋‹ค. +- [ ] **PUP(์• ๋“œ์›จ์–ด) ์—†์Œ**: winget ์€ PUA ์ž๋™ ๊ฑฐ๋ถ€, FileHorse/Snapfiles ์€ ์ฆ‰์‹œ ์‚ญ์ œ. ๋ฒˆ๋“คยทํˆด๋ฐ” ๊ธˆ์ง€. +- [ ] **์„ค์น˜์ž ์ฝ”๋“œ ์„œ๋ช…(Authenticode)**: AV ์˜คํƒ์„ ์ค„์ด๊ณ  ํฌํ„ธ ์‹ฌ์‚ฌ๋ฅผ ํ†ต๊ณผํ•œ๋‹ค. +- [ ] **VirusTotal ์ฒญ์ •** ํ™•์ธ ํ›„ ์ œ์ถœ. +- [ ] **๋ฒ„์ „ ๊ณ ์ • URL**: `.../latest` ๊ธˆ์ง€. ํ•ด์‹œ๊ฐ€ ๋ฒ„์ „๋งˆ๋‹ค ๋ฐ”๋€Œ๋ฏ€๋กœ ๊ณ ์ • ๊ฒฝ๋กœ๋ฅผ ์“ด๋‹ค. + +ํ˜„์žฌ ๋ฆด๋ฆฌ์Šค ์ž์‚ฐ(Forgejo): `https://git.chanpaca.net/Video-Downloader/releases/releases/download/v{VERSION}/Paca-Setup-{arch}.{ext}` + +--- + +## 1. winget (Windows Package Manager) โ€” ์ตœ๊ณ  ROI +`winget install Paca.Paca` ํ•œ ์ค„๋กœ ๋ชจ๋“  Windows 11 ์— ๋ฐฐํฌ๋œ๋‹ค. +- ๋งค๋‹ˆํŽ˜์ŠคํŠธ ์œ„์น˜(๋ฆฌํฌ์ง€ํ† ๋ฆฌ): `microsoft/winget-pkgs` โ†’ `manifests/p/Paca/Paca/{VERSION}/` +- ์ œ์ถœ ํŒŒ์ผ 3์ข…(๋ฉ€ํ‹ฐํŒŒ์ผ ํ•„์ˆ˜, singleton ๊ธˆ์ง€): + - `Paca.Paca.yaml` (version) + - `Paca.Paca.installer.yaml` (installer) + - `Paca.Paca.locale.en-US.yaml` (defaultLocale) +- ํ…œํ”Œ๋ฆฟ: `build/distribution/winget/` +- ์ ˆ์ฐจ: `wingetcreate new ` ๋กœ ์ดˆ์•ˆ ์ƒ์„ฑ โ†’ `winget validate` โ†’ PR 1๊ฐœ(ํŒจํ‚ค์ง€ 1๋ฒ„์ „) โ†’ Microsoft CLA ์„œ๋ช…. +- ํ•„์ˆ˜ ์ฑ„์›€: `InstallerSha256`(`winget hash `), MSI `ProductCode`, `InstallerLocale`, `ElevationRequirement`(Program Files ์„ค์น˜ ์‹œ `elevationRequired`). +- ์ฃผ์˜: `.ps1`/`.bat` ์„ค์น˜๋Š” ๋ถˆ๊ฐ€. MSI/MSIX/EXE/zip ๋งŒ. URL ์€ HTTPS ํ•„์ˆ˜. + +## 2. Chocolatey โ€” ์ปค๋ฎค๋‹ˆํ‹ฐ ์ €์žฅ์†Œ +- ํ…œํ”Œ๋ฆฟ: `build/distribution/chocolatey/` (`paca.nuspec`, `tools/chocolateyInstall.ps1`, `tools/chocolateyUninstall.ps1`) +- ์ ˆ์ฐจ: `choco new paca` ๋กœ ๊ตฌ์กฐ ์ƒ์„ฑ ํ›„ ํ…œํ”Œ๋ฆฟ ๋Œ€์ฒด โ†’ `choco pack` โ†’ `choco push paca.{VERSION}.nupkg --source https://push.chocolatey.org/` +- ๊ทœ์น™: `licenseUrl`/`projectUrl` ํ•„์ˆ˜, `iconUrl` ์€ PNG(์ œ์–ด ๊ฐ€๋Šฅํ•œ ํ˜ธ์ŠคํŠธ), `raw.githubusercontent.com` ๊ธˆ์ง€(CPMR0076), `tools` ์Šคํฌ๋ฆฝํŠธ๋Š” ํ—ฌํผ(`Install-ChocolateyPackage`) ์‚ฌ์šฉ + **BOM ํฌํ•จ UTF-8**. +- ๋ชจ๋”๋ ˆ์ด์…˜: Pendingโ†’Readyโ†’Approved. 35์ผ ๋ฌด์‘๋‹ต ์‹œ ์ž๋™ ๊ฑฐ์ ˆ. + +## 3. Scoop Extras โ€” ํฌํ„ฐ๋ธ”/๊ฐœ๋ฐœ์ž ์ฑ„๋„ +- ํ…œํ”Œ๋ฆฟ: `build/distribution/scoop/paca.json` +- ์ ˆ์ฐจ: `ScoopInstaller/Extras` ์ด์Šˆ๋กœ ์‹ ๊ทœ ์•ฑ ์ œ์•ˆ(ํ•„์ˆ˜) โ†’ PR โ†’ `/verify` ์ฝ”๋ฉ˜ํŠธ. +- ํ•„์ˆ˜: `architecture`(64bit/arm64), `hash`(SHA256), SPDX `license`, ๊ทธ๋ฆฌ๊ณ  **`checkver`+`autoupdate`**(์—†์œผ๋ฉด ๋Œ€๊ฐœ ๊ฑฐ์ ˆ). +- ์„ค์น˜์ž๊ฐ€ EXE/MSI ๋ฟ์ด๋ฉด `#/dl.7z` ์ถ”์ถœ ํŠธ๋ฆญ ๋˜๋Š” `innosetup: true` ์‚ฌ์šฉ. + +## 4. ๋‹ค์šด๋กœ๋“œ ํฌํ„ธ (๋Œ€์ค‘ ์œ ์ž…์ธต) +๋ชจ๋”๋ ˆ์ด์…˜์— **2~3์ฃผ** ๊ฑธ๋ฆฌ๋ฏ€๋กœ ๋Ÿฐ์น˜ 3~4์ฃผ ์ „ ์ œ์ถœํ•œ๋‹ค. +- **Softpedia**: `softpedia.com/submit_pad.php` (PAD ๊ถŒ์žฅ). ๋ด‡ ์ฐจ๋‹จ์ด ๊ฐ•ํ•˜๋ฏ€๋กœ ์‹ค์ œ ๋ธŒ๋ผ์šฐ์ €๋กœ ์ œ์ถœ. +- **FileHorse**: `filehorse.com/contact/` ๋กœ 10๊ฐœ ํ•ญ๋ชฉ(์ด๋ฆ„ยท๋ฒ„์ „ยท์‚ฌ์ดํŠธยท์„ค์น˜๋งํฌยท๋ผ์ด์„ ์Šคยท256px ์•„์ด์ฝ˜ยท์Šคํฌ๋ฆฐ์ƒทยท์„ค๋ช…ยทYouTubeยทPAD) ์ „๋‹ฌ. VirusTotal/Safe Browsing ๊ฒ€์‚ฌ ํ†ต๊ณผ ํ•„์ˆ˜. +- **Snapfiles**: `snapfiles.com/dev/` ๊ฐœ๋ฐœ์ž์„ผํ„ฐ ๋กœ๊ทธ์ธ ํ›„ ์ œ์ถœ. ์ง์ ‘ ์„ค์น˜ยทํ…Œ์ŠคํŠธ, AV ๋‹ค์ค‘ ๊ฒ€์‚ฌ. +- **MajorGeeks**: `mgnews AT majorgeeks.com` (ํŒŒ์ผ), `marketing@majorgeeks.com` (PR). VMware ์„ค์น˜ ํ…Œ์ŠคํŠธ, 4์  ์ด์ƒ์ด์–ด์•ผ ๋“ฑ์žฌ. + +## 5. AlternativeTo โ€” "IDM ๋Œ€์•ˆ" ๊ฒ€์ƒ‰ ํก์ˆ˜ +- ๊ณ„์ • ์ƒ์„ฑ ํ›„ **7์ผ aging** ํ•„์š”(+์ด๋ฉ”์ผ ์ธ์ฆ). ๋ฌด๋ฃŒ ํ๋Š” ์ˆ˜๊ฐœ์›”, **$5 priority** ๋Š” 1~2์˜์—…์ผ. +- ๋“ฑ์žฌ ํ›„ **ํ•ต์‹ฌ์€ "Suggest Alternatives"**: IDM, 4K Video Downloader, JDownloader, yt-dlp, Xtreme Download Manager, Free Download Manager, VideoProc ์„ ๋Œ€์•ˆ์œผ๋กœ ์—ฐ๊ฒฐํ•ด์•ผ ๋น„๊ต ํŽ˜์ด์ง€์— ๋…ธ์ถœ๋œ๋‹ค. +- ํ•„์ˆ˜ ํ•„๋“œ: Name(๊ณต์‹๋ช…๋งŒ), Short Description, Website, Pricing, Tags, Platforms, Author(ํšŒ์‚ฌ), 128px+ ์ •์‚ฌ๊ฐ ์•„์ด์ฝ˜. + +## 6. ๋Ÿฐ์น˜ ์ฑ„๋„ (์ŠคํŒŒ์ดํฌ) +- **Product Hunt**: ํ™”/์ˆ˜ 00:01 PST, ์ฝ”์–ด 200~400๋ช… ํ™•๋ณด, ์ฒซ 3์‹œ๊ฐ„ ์ง‘์ค‘. 6๊ฐœ์›” ์ฟจ๋‹ค์šด. +- **Show HN**: ํ™”/์ˆ˜ 07:30 ET, ๋‹ค์šด๋กœ๋“œ ๊ฐ€๋Šฅํ•œ ๋นŒ๋“œ + ์ฒซ ๋Œ“๊ธ€์— ๊ฐœ๋ฐœ ๋ฐฐ๊ฒฝ ์ƒ์„ธ. ํˆฌํ‘œ ์š”์ฒญ ๊ธˆ์ง€. +- **Reddit**: `r/software`, `r/opensource`, `r/foss`, `r/selfhosted`, `r/DataHoarder`, `r/privacy` โ€” ๋งํฌ ๋„๋ฐฐ ๊ธˆ์ง€, ๊ฐœ๋ฐœ์ž ์ž๊ธฐ์†Œ๊ฐœ ํ•„์ˆ˜. +- **awesome ๋ฆฌ์ŠคํŠธ PR**: `awesome-selfhosted`, `awesome-windows`, `awesome-video`. +- **๋‰ด์Šค๋ ˆํ„ฐ ํ•์น˜**: TLDR(47๋งŒ), selfh.st(์ž์ฒดํ˜ธ์ŠคํŒ… 3๋งŒ+). + +## 7. ํ™•์ • ๊ฐ’ (v1.2.0) +| ํ•ญ๋ชฉ | ๊ฐ’ | +|---|---| +| `VERSION` | `1.2.0` | +| ๋ฆด๋ฆฌ์Šค ์ž์‚ฐ URL | `https://git.chanpaca.net/Video-Downloader/releases/releases/download/v1.2.0/` | +| `SHA256_X64_MSI` | `56f305290656e636360bcf70377f3b83327149a3ae925f8350d90402f8ed43e3` | +| `SHA256_ARM64_MSI` | `51c7a3d97cb5f52ed319c9c9be8aa5c6e403273f296369befbd01cd1a27e3f00` | +| `SHA256_X64_EXE` | `2e963e1a5bd9d1a8faa186d2629bc137e46e26d10bfa8f3702b9f7e97619bdd7` | +| `SHA256_ARM64_EXE` | `c9d566ecdd2890bb367195c805e042345f0c9f121c66bd0dd63bc87c08e597db` | +| `MSI_PRODUCTCODE` (x64) | `{02433E35-4DD8-4816-A1FD-2587DDCFEBF8}` | +| `MSI_UPGRADECODE` (x64) | `{65393C7D-17DC-4B9F-9D0B-F9911092C449}` | +| x64 EXE/MSI ํฌ๊ธฐ | `67,836,807` / `73,552,796` | +| arm64 EXE/MSI ํฌ๊ธฐ | `61,835,054` / `68,166,544` | + +> x64 MSI ๋Š” ๊ณต๊ฐœ ๋ฆด๋ฆฌ์Šค์—์„œ ๋‚ด๋ ค๋ฐ›์•„ ๋กœ์ปฌ ํ•ด์‹œ์™€ **๋ฐ”์ดํŠธ ์ผ์น˜๋ฅผ ๊ฒ€์ฆ**ํ–ˆ๋‹ค. ๋‚˜๋จธ์ง€ ์ž์‚ฐ์€ ํฌ๊ธฐ๊ฐ€ ๋ฆด๋ฆฌ์Šค์™€ ์ •ํ™•ํžˆ ์ผ์น˜ํ•ด ๋™์ผ ๋นŒ๋“œ์ž„์„ ํ™•์ธํ–ˆ๋‹ค(ํ•ด์‹œ ์žฌ์‚ฐ์ถœ ์—†์ด ์‹ ๋ขฐ). +> ๋ฒ„์ „์ด ์˜ฌ๋ผ๊ฐ€๋ฉด `README ยง7` ๊ฐ’๊ณผ ๊ฐ ๋งค๋‹ˆํŽ˜์ŠคํŠธ์˜ ๋ฒ„์ „ยทURLยทํ•ด์‹œ๋ฅผ ํ•จ๊ป˜ ๊ฐฑ์‹ ํ•œ๋‹ค. diff --git a/build/distribution/chocolatey/paca.nuspec b/build/distribution/chocolatey/paca.nuspec new file mode 100644 index 0000000..6231415 --- /dev/null +++ b/build/distribution/chocolatey/paca.nuspec @@ -0,0 +1,35 @@ + + + + + paca + 1.2.0 + Paca + Paca + Paca + https://mediabrowser.chanpaca.net/ + https://git.chanpaca.net/Video-Downloader/releases + https://mediabrowser.chanpaca.net/assets/paca-logo-512.png + https://mediabrowser.chanpaca.net/ + false + https://git.chanpaca.net/Video-Downloader/releases + https://mediabrowser.chanpaca.net/guide.html + https://mediabrowser.chanpaca.net/releases.html + Free media browser and video downloader (HLS m3u8 / DASH / MP4 auto-detection). + +Paca is a 100% free media browser for Windows that downloads streaming video. +It detects HLS (.m3u8), MPEG-DASH (.mpd) and MP4 streams the moment they play, +inherits the tab's login cookies and Referer header, downloads segments in +parallel with resume, and remuxes them into a lossless MP4 with a built-in +ffmpeg engine. Free alternative to Internet Download Manager and 4K Video +Downloader, with no download cap and no subscription. + +This package installs the desktop application. A separate Android companion app +is distributed via APK. + + video-downloader m3u8 hls dash download-manager media-browser ffmpeg + + + + + diff --git a/build/distribution/chocolatey/tools/chocolateyInstall.ps1 b/build/distribution/chocolatey/tools/chocolateyInstall.ps1 new file mode 100644 index 0000000..b0bb86a --- /dev/null +++ b/build/distribution/chocolatey/tools/chocolateyInstall.ps1 @@ -0,0 +1,18 @@ +# Paca Chocolatey install script. SHA256 ์€ ๊ณต๊ฐœ ๋ฆด๋ฆฌ์Šค ์ž์‚ฐ v1.2.0 ์—์„œ ์‚ฐ์ถœํ–ˆ๋‹ค. +$ErrorActionPreference = 'Stop' + +$toolsDir = Split-Path -Parent $MyInvocation.MyCommand.Definition +$version = '1.2.0' +$base = "https://git.chanpaca.net/Video-Downloader/releases/releases/download/v$version" + +$packageArgs = @{ + packageName = 'paca' + fileType = 'msi' + url64bit = "$base/Paca-Setup-x64.msi" + checksum64 = '56f305290656e636360bcf70377f3b83327149a3ae925f8350d90402f8ed43e3' + checksumType64 = 'sha256' + silentArgs = '/qn /norestart' + validExitCodes = @(0, 3010, 1641) +} + +Install-ChocolateyPackage @packageArgs diff --git a/build/distribution/chocolatey/tools/chocolateyUninstall.ps1 b/build/distribution/chocolatey/tools/chocolateyUninstall.ps1 new file mode 100644 index 0000000..19b516b --- /dev/null +++ b/build/distribution/chocolatey/tools/chocolateyUninstall.ps1 @@ -0,0 +1,23 @@ +# Paca โ€” Chocolatey uninstall script (silent MSI uninstall by name/ProductCode). +$ErrorActionPreference = 'Stop' + +$packageName = 'paca' +$softwareName = 'Paca' + +[array]$key = Get-UninstallRegistryKey -SoftwareName $softwareName + +if ($key.Count -eq 1) { + $key | ForEach-Object { + $msiArgs = @( + '/x' + $_.PSChildName + '/qn' + '/norestart' + ) + Uninstall-ChocolateyPackage -PackageName $packageName -FileType 'msi' -SilentArgs ($msiArgs -join ' ') -ValidExitCodes @(0, 3010, 1605, 1614, 1641) + } +} elseif ($key.Count -eq 0) { + Write-Warning "$packageName has already been uninstalled by other means." +} else { + Write-Warning "Multiple matching products found. Please uninstall manually." +} diff --git a/build/distribution/scoop/paca.json b/build/distribution/scoop/paca.json new file mode 100644 index 0000000..78b60c1 --- /dev/null +++ b/build/distribution/scoop/paca.json @@ -0,0 +1,32 @@ +{ + "version": "1.2.0", + "description": "Free media browser and video downloader. Auto-detects HLS/DASH/MP4 streams and saves lossless MP4.", + "homepage": "https://mediabrowser.chanpaca.net/", + "license": "Proprietary", + "architecture": { + "64bit": { + "url": "https://git.chanpaca.net/Video-Downloader/releases/releases/download/v1.2.0/Paca-Setup-x64.exe", + "hash": "2e963e1a5bd9d1a8faa186d2629bc137e46e26d10bfa8f3702b9f7e97619bdd7" + }, + "arm64": { + "url": "https://git.chanpaca.net/Video-Downloader/releases/releases/download/v1.2.0/Paca-Setup-arm64.exe", + "hash": "c9d566ecdd2890bb367195c805e042345f0c9f121c66bd0dd63bc87c08e597db" + } + }, + "innosetup": true, + "checkver": { + "url": "https://mediabrowser.chanpaca.net/releases.json", + "jsonpath": "$.releases[0].tag", + "regex": "v([\\d.]+)" + }, + "autoupdate": { + "architecture": { + "64bit": { + "url": "https://git.chanpaca.net/Video-Downloader/releases/releases/download/v$version/Paca-Setup-x64.exe" + }, + "arm64": { + "url": "https://git.chanpaca.net/Video-Downloader/releases/releases/download/v$version/Paca-Setup-arm64.exe" + } + } + } +} diff --git a/build/distribution/winget/Paca.Paca.installer.yaml b/build/distribution/winget/Paca.Paca.installer.yaml new file mode 100644 index 0000000..cb60f7d --- /dev/null +++ b/build/distribution/winget/Paca.Paca.installer.yaml @@ -0,0 +1,33 @@ +# yaml-language-server: $schema=https://aka.ms/winget-manifest.installer.1.12.0.schema.json +# Paca winget installer manifest (v1.2.0). +# SHA256/ProductCode/UpgradeCode ๋Š” ๊ณต๊ฐœ ๋ฆด๋ฆฌ์Šค ์ž์‚ฐ v1.2.0 ์—์„œ ์‚ฐ์ถœํ–ˆ๊ณ , x64 MSI ๋Š” ๋‚ด๋ ค๋ฐ›์•„ ํ•ด์‹œ ์ผ์น˜๋ฅผ ํ™•์ธํ–ˆ๋‹ค. +PackageIdentifier: Paca.Paca +PackageVersion: 1.2.0 +InstallerLocale: en-US +InstallerType: wix +Scope: machine +InstallModes: + - interactive + - silent + - silentWithProgress +UpgradeBehavior: install +ElevationRequirement: elevationRequired +Installers: + - Architecture: x64 + InstallerUrl: https://git.chanpaca.net/Video-Downloader/releases/releases/download/v1.2.0/Paca-Setup-x64.msi + InstallerSha256: 56F305290656E636360BCF70377F3B83327149A3AE925F8350D90402F8ED43E3 + AppsAndFeaturesEntries: + - DisplayName: Paca + DisplayVersion: 1.2.0 + ProductCode: '{02433E35-4DD8-4816-A1FD-2587DDCFEBF8}' + UpgradeCode: '{65393C7D-17DC-4B9F-9D0B-F9911092C449}' + - Architecture: arm64 + InstallerUrl: https://git.chanpaca.net/Video-Downloader/releases/releases/download/v1.2.0/Paca-Setup-arm64.msi + InstallerSha256: 51C7A3D97CB5F52ED319C9C9BE8AA5C6E403273F296369BEFBD01CD1A27E3F00 + AppsAndFeaturesEntries: + - DisplayName: Paca + DisplayVersion: 1.2.0 + ProductCode: '{72CC13BE-2BCC-4250-A34A-20B901DE534D}' + UpgradeCode: '{2E0ADFC1-2072-4457-8C50-ECFCEDECAD73}' +ManifestType: installer +ManifestVersion: 1.12.0 diff --git a/build/distribution/winget/Paca.Paca.locale.en-US.yaml b/build/distribution/winget/Paca.Paca.locale.en-US.yaml new file mode 100644 index 0000000..a60ba2c --- /dev/null +++ b/build/distribution/winget/Paca.Paca.locale.en-US.yaml @@ -0,0 +1,35 @@ +# yaml-language-server: $schema=https://aka.ms/winget-manifest.defaultLocale.1.12.0.schema.json +# Paca โ€” winget default locale manifest (v1.2.0). +PackageIdentifier: Paca.Paca +PackageVersion: 1.2.0 +PackageLocale: en-US +Publisher: Paca +PublisherUrl: https://mediabrowser.chanpaca.net/ +PublisherSupportUrl: https://mediabrowser.chanpaca.net/guide.html +PackageName: Paca +PackageUrl: https://mediabrowser.chanpaca.net/ +License: Proprietary +LicenseUrl: https://mediabrowser.chanpaca.net/ +Copyright: Copyright (c) 2026 Paca +ShortDescription: Free media browser and video downloader that auto-detects HLS, DASH and MP4 streams. +Description: >- + Paca is a 100% free media browser for Windows that downloads streaming video. + It detects HLS (.m3u8), MPEG-DASH (.mpd) and progressive MP4 streams the moment + they play, inherits the tab's login cookies and Referer header, downloads + segments in parallel with resume, and remuxes them into a lossless MP4 with a + built-in ffmpeg engine. A QR-paired Android companion streams your PC library + over local Wi-Fi. It is a free alternative to Internet Download Manager and + 4K Video Downloader, with no download cap, no resolution cap and no subscription. +Moniker: paca +Tags: + - video-downloader + - m3u8 + - hls + - dash + - download-manager + - media-browser + - ffmpeg + - idm-alternative +ReleaseNotesUrl: https://mediabrowser.chanpaca.net/releases.html +ManifestType: defaultLocale +ManifestVersion: 1.12.0 diff --git a/build/distribution/winget/Paca.Paca.yaml b/build/distribution/winget/Paca.Paca.yaml new file mode 100644 index 0000000..e74d25f --- /dev/null +++ b/build/distribution/winget/Paca.Paca.yaml @@ -0,0 +1,7 @@ +# yaml-language-server: $schema=https://aka.ms/winget-manifest.version.1.12.0.schema.json +# Paca โ€” winget version manifest (v1.2.0). ์ž๋ฆฌํ‘œ์‹œ์ž({{...}})๋Š” ๋ฆด๋ฆฌ์Šค ํ™•์ • ํ›„ ์ฑ„์šด๋‹ค. +PackageIdentifier: Paca.Paca +PackageVersion: 1.2.0 +DefaultLocale: en-US +ManifestType: version +ManifestVersion: 1.12.0 diff --git a/build/indexnow-ping.ps1 b/build/indexnow-ping.ps1 new file mode 100644 index 0000000..85488a1 --- /dev/null +++ b/build/indexnow-ping.ps1 @@ -0,0 +1,51 @@ +# Paca ์‚ฌ์ดํŠธ(site/)์˜ ์ „์ฒด URL ์„ IndexNow ๋กœ ๊ฒ€์ƒ‰์—”์ง„(Bing/ChatGPT SearchยทNaverยทYandex)์— ์ฆ‰์‹œ ํ†ต๋ณดํ•œ๋‹ค. +# ์‚ฌ์šฉ: ./build/indexnow-ping.ps1 [-SiteUrl https://mediabrowser.chanpaca.net] +# ํ•„์š”: site/sitemap.xml, site/{key}.txt (ํ‚ค ํŒŒ์ผ์€ ์‚ฌ์ดํŠธ ๋ฃจํŠธ์—์„œ ๊ณต๊ฐœ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•ด์•ผ ํ•œ๋‹ค) +# ์ฐธ๊ณ : ChatGPT Search ์ธ์šฉ์˜ 87%๊ฐ€ Bing ์ธ๋ฑ์Šค์—์„œ ๋‚˜์˜ค๋ฏ€๋กœ IndexNow ์ฆ‰์‹œ ์ƒ‰์ธ์€ ์ตœ์šฐ์„  ์ˆœ์œ„ ์ฑ„๋„์ด๋‹ค. +param([string]$SiteUrl = "https://mediabrowser.chanpaca.net") + +$ErrorActionPreference = "Stop" +$root = Split-Path -Parent $PSScriptRoot +$key = "e9f2c7a4b1d8460f9c3e2a7b5d1f08c4" +$keyLocation = "$SiteUrl/$key.txt" +$sitemapPath = Join-Path $root "site\sitemap.xml" + +if (-not (Test-Path $sitemapPath)) { throw "site/sitemap.xml ์ด ์—†์Šต๋‹ˆ๋‹ค." } + +# 1) sitemap.xml ์—์„œ URL ์ „๋Ÿ‰ ์ถ”์ถœ +[xml]$sitemap = Get-Content $sitemapPath -Raw +$urls = @($sitemap.urlset.url | ForEach-Object { $_.loc } | Where-Object { $_ }) +if ($urls.Count -eq 0) { throw "sitemap.xml ์—์„œ URL ์„ ์ฐพ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค." } +Write-Host "IndexNow: $($urls.Count)๊ฐœ URL ์ œ์ถœ" -ForegroundColor Cyan + +# 2) ์ฐธ์—ฌ ์—”์ง„์— ๋ฐฐ์น˜ ์ œ์ถœ (api.indexnow.org ๋Š” ์ฐธ์—ฌ ์—”์ง„์— URL ์„ ๊ณต์œ ํ•œ๋‹ค) +$endpoints = @( + "https://api.indexnow.org/indexnow", + "https://www.bing.com/indexnow", + "https://searchadvisor.naver.com/indexnow" +) + +$body = @{ + host = ([System.Uri]$SiteUrl).Host + key = $key + keyLocation = $keyLocation + urlList = $urls +} | ConvertTo-Json -Depth 3 + +foreach ($endpoint in $endpoints) { + try { + $resp = Invoke-WebRequest -Uri $endpoint -Method Post -ContentType "application/json; charset=utf-8" ` + -Body $body -UseBasicParsing -TimeoutSec 30 + Write-Host (" {0} -> {1} {2}" -f $endpoint, [int]$resp.StatusCode, $resp.StatusDescription) -ForegroundColor Green + } catch { + # 200/202 ์ •์ƒ, ์ตœ์ดˆ ์ œ์ถœ์˜ 202(ํ‚ค ๊ฒ€์ฆ ๋Œ€๊ธฐ)๋„ ์ •์ƒ ํ๋ฆ„์ด๋‹ค. + $code = $_.Exception.Response.StatusCode.value__ + if ($code -in 200, 202) { + Write-Host (" {0} -> {1} (์ˆ˜์‹ /ํ‚ค ๊ฒ€์ฆ ๋Œ€๊ธฐ)" -f $endpoint, $code) -ForegroundColor Green + } else { + Write-Warning (" {0} -> ์‹คํŒจ: {1}" -f $endpoint, $_.Exception.Message) + } + } +} + +Write-Host "์™„๋ฃŒ: IndexNow ์ œ์ถœ ์ข…๋ฃŒ" -ForegroundColor Green diff --git a/docs/BACKLOG.md b/docs/BACKLOG.md index bc1c593..ba445b3 100644 --- a/docs/BACKLOG.md +++ b/docs/BACKLOG.md @@ -3,6 +3,32 @@ > **์ถœ์ฒ˜**: 2026-07-26 ๋‹ค์ฐจ์› ์ฝ”๋“œ ๊ฐ์‚ฌ(9๊ฐœ ์ฐจ์›, ์›์‹œ 63๊ฐœ โ†’ ์ƒ์œ„ 15 ์„ ์ •). ๋ชจ๋‘ ์‹ค์ œ ์†Œ์Šค ๊ธฐ๋ฐ˜(file:line ๊ฒ€์ฆ). > **์‚ฌ์šฉ๋ฒ•**: ์™„๋ฃŒํ•œ ํ•ญ๋ชฉ์€ `- [ ]` โ†’ `- [x]` ๋กœ ์ฒดํฌ. +## ๐Ÿš€ [์ง„ํ–‰] ์„ฑ์žฅยทํ™๋ณดยท๋ฐ”์ด๋Ÿด ์‹คํ–‰ ๊ณ„ํš ์ˆ˜๋ฆฝ ๋ฐ ๊ธฐ์ˆ  ์ธํ”„๋ผ ์ž์œจ ๊ตฌ์ถ• (`docs/GROWTH_PLAN.md`, 2026-09-14) +- [x] **๋ฆฌ์„œ์น˜ ์™„๋ฃŒ**: 2026 ๊ธฐ์ค€ ๊ฒ€์ƒ‰(GEO/AEO ์‹ค์ธก), ๋Ÿฐ์น˜ ์‹œํ€€์Šค, ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €ยทํฌํ„ธยท๋Œ€์•ˆ ์‚ฌ์ดํŠธ, ์˜คํ”ˆ์†Œ์Šค ๋ฐ”์ด๋Ÿด, ๋ฆฌํผ๋Ÿด ๋ฃจํ”„ ์กฐ์‚ฌ ๋ฐ PACA ์ „์šฉ ๊ณ„ํš์„œ ์ž‘์„ฑ. +- [x] **ํ—ค๋“œํ’€ ๋ธŒ๋ผ์šฐ์ง• ์กฐ์‚ฌ ๋„๊ตฌ**: `scratch/headful_fetch.mjs` (Playwright, ์‹ค์ œ Chrome ์ฐฝ + ์˜์† ํ”„๋กœํ•„ + `CDP` ์ ‘์† ๋ชจ๋“œ) โ€” ๋ด‡ ์ฐจ๋‹จ/JS ์ „์šฉ ํŽ˜์ด์ง€ ์กฐ์‚ฌ์šฉ. +- [x] **๋กœ๊ทธ์ธ ์„ธ์…˜ ๋ธŒ๋ผ์šฐ์ง• (`scratch/chrome-debug.ps1`, `scratch/headful-real.ps1`)**: Chrome 136+ ๊ธฐ๋ณธ ํ”„๋กœํ•„ ๋””๋ฒ„๊น… ์ฐจ๋‹จ ์šฐํšŒ โ€” ์ „์šฉ ํ”„๋กœํ•„ Chrome ์„ **์ž๋™ํ™” ํ”Œ๋ž˜๊ทธ ์—†์ด** ๋„์›Œ ๊ตฌ๊ธ€ ๋กœ๊ทธ์ธ ํ—ˆ์šฉ, CDP ๋กœ ๊ทธ ์„ธ์…˜์— ์ ‘์†. `-FromReal` ๋กœ ๊ธฐ์กด ์‹ค์ œ ํ”„๋กœํ•„ ๋กœ๊ทธ์ธ/์ฟ ํ‚ค ๋ณต์‚ฌ ์ง€์›. (Bing/Naver/Google ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€ ์ž‘์—…์šฉ) +- [x] **AI ํฌ๋กค๋Ÿฌ ์ „๋ฉด ํ—ˆ์šฉ ํ™•์žฅ (`site/robots.txt`)**: 2026 ์‹ ๊ทœ ํฌ๋กค๋Ÿฌ `OAI-SearchBot`, `ChatGPT-User`, `Applebot-Extended` ์ถ”๊ฐ€ (ChatGPT Search ์ธ์šฉ์˜ 87%๊ฐ€ Bing ์ธ๋ฑ์Šค ์˜์กด). +- [x] **IndexNow ์ฆ‰์‹œ ์ƒ‰์ธ ์ธํ”„๋ผ**: ํ‚ค ํŒŒ์ผ `site/e9f2c7a4b1d8460f9c3e2a7b5d1f08c4.txt` + `build/indexnow-ping.ps1` (api.indexnow.orgยทBingยทNaver ๋ฐฐ์น˜ ์ œ์ถœ) + `deploy-site.ps1` ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ ์—ฐ๋™. +- [x] **Naver Search Advisor ๋Œ€์‘ RSS ํ”ผ๋“œ**: `site/feed.xml` (RSS 2.0) + robots/์‚ฌ์ดํŠธ๋งต/ํ—ค๋“œ ๋งํฌ ๋“ฑ๋ก. +- [x] **์‹ค์ œ ์˜๋ฌธ ๋žœ๋”ฉ ํŽ˜์ด์ง€ ๋ฐ Hreflang ์œ ํšจํ™”**: `site/en/index.html` ์‹ ์„ค(๋‹ต๋ณ€ ์šฐ์„  ์บก์Аยท๋น„๊ตํ‘œยทFAQยท์—”ํ‹ฐํ‹ฐ ๊ทธ๋ž˜ํ”„), ํ•œ๊ตญ์–ด ํ™ˆ `hreflang en` โ†’ `/en/` ์ •์ •, ๋ฒˆ์—ญ ์—†๋Š” ํ•˜์œ„ ํŽ˜์ด์ง€์˜ ๋ฌดํšจ ์˜๋ฌธ hreflang ์ œ๊ฑฐ. +- [x] **์—”ํ‹ฐํ‹ฐ ๊ทธ๋ž˜ํ”„ & ๋‹ต๋ณ€ ์šฐ์„  ๊ฐ€์‹œ์  FAQ (`site/index.html`)**: `Organization` ๋…ธ๋“œ + `sameAs` + `publisher` + `dateModified` ์ถ”๊ฐ€, JSON-LD ์ „์šฉ์ด๋˜ FAQ ๋ฅผ ํ™”๋ฉด ๋ณธ๋ฌธ Q&A 5๋ฌธํ•ญ์œผ๋กœ ์Šน๊ฒฉ (AI ๋Š” ์ˆจ๊น€ JSON-LD ๋ฅผ ์ธ์šฉํ•˜์ง€ ์•Š์Œ). +- [x] **๋น„๊ตํ‘œ ์˜๋ฏธ๋ก  ๊ฐ•ํ™” (`site/vs-idm-alternative.html`)**: `` + `th scope` ๋ถ€์—ฌ (์˜๋ฏธ๋ก ์  ๋น„๊ตํ‘œ๋Š” ์ธ์šฉ๋ฅ  +47%). +- [x] **๋ฐฐํฌยท์œ ํ†ต ํ‚คํŠธ ํ…œํ”Œ๋ฆฟ (`build/distribution/`)**: winget(3์ข… ๋งค๋‹ˆํŽ˜์ŠคํŠธ)ยทChocolatey(nuspec+์„ค์น˜/์ œ๊ฑฐ)ยทScoop(manifest) ํ…œํ”Œ๋ฆฟ + ํฌํ„ธ/๋Ÿฐ์น˜ ์ œ์ถœ ํ”Œ๋ ˆ์ด๋ถ. +- [x] **๊ฒฝ์Ÿ์ž๋ณ„ ๋น„๊ต ๋žœ๋”ฉ ํŽ˜์ด์ง€**: `site/vs-yt-dlp.html`(CLI ๋„๊ตฌ ๋Œ€๋น„), `site/vs-jdownloader.html`(๋งํฌ๊ทธ๋ž˜๋ฒ„ ๋Œ€๋น„) ์‹ ์„ค โ€” ๋‹ต๋ณ€ ์šฐ์„  ์บก์Аยท์˜๋ฏธ๋ก ์  ๋น„๊ตํ‘œยทFAQยท๋‚ด๋ถ€ ๋งํฌยท์‚ฌ์ดํŠธ๋งตยทRSSยทllms.txt ๋™๊ธฐํ™”. +- [x] **์‚ฌ์ดํŠธ ํ™๋ณด ํ‚คํŠธ (`docs/promo/`)**: ์ฑ„๋„๋ณ„ UTM ๊ทœ์น™ยท์‹คํ–‰ ์ˆœ์„œยท๊ธˆ์ง€์‚ฌํ•ญ, ํ•œ๊ตญ ๊ฒŒ์‹œ๋ฌธ(ํด๋ฆฌ์•™ยท๋ฝ๋ฟŒยท๋””์Šค์ฝฐ์ด์—‡ยท๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธยท์œ ํŠœ๋ฒ„ ํ•์น˜), ๊ธ€๋กœ๋ฒŒ ๊ฒŒ์‹œ๋ฌธ(PHยทShow HNยทRedditยท๋‰ด์Šค๋ ˆํ„ฐ), ๋””๋ ‰ํ„ฐ๋ฆฌ ์ œ์ถœ ๋ฐ์ดํ„ฐ(AlternativeTo ๋“ฑ). +- [x] **๋„ค์ด๋ฒ„ ์„œ์น˜์–ด๋“œ๋ฐ”์ด์ € ์‹ค์ œ ๋“ฑ๋กยท์†Œ์œ ํ™•์ธยท์‚ฌ์ดํŠธ๋งต ์ œ์ถœ (2๊ฐœ ๋„๋ฉ”์ธ)**: ์ „์šฉ ํ”„๋กœํ•„ Chrome CDP ์„ธ์…˜์œผ๋กœ `mediabrowser.chanpaca.net`(HTML ํƒœ๊ทธ ๋ฐฉ์‹, `site/index.html` ์— `naver-site-verification` ๋ฉ”ํƒ€ ์ถ”๊ฐ€)๊ณผ `paca.chanpaca.net`(HTML ํŒŒ์ผ ๋ฐฉ์‹, `site/naverb6e030772fa2a09122a78d79bb2ba1df.html`) ๋ชจ๋‘ ์‚ฌ์ดํŠธ ๋“ฑ๋ก + ์†Œ์œ ํ™•์ธ ์™„๋ฃŒ, ๊ฐ `sitemap.xml` ์ œ์ถœ(`26.09.14 23:01`/`23:06`). +- [x] **Google Search Console (2๊ฐœ ์†์„ฑ)**: `paca.chanpaca.net` ์‹ ๊ทœ ์†์„ฑ ์ธ์ฆ(๊ธฐ์กด `google-site-verification` ํŒŒ์ผ์ด ๋‘ ๋„๋ฉ”์ธ ๋ฃจํŠธ์— ๋™์ผ ์„œ๋น™๋˜์–ด ์ž๋™ ์ธ์ฆ) + `sitemap.xml` ์ œ์ถœ(11ํŽ˜์ด์ง€ ๋ฐœ๊ฒฌ), `mediabrowser.chanpaca.net` ์‚ฌ์ดํŠธ๋งต ์žฌ์ œ์ถœ. +- [x] **Bing Webmaster Tools (2๊ฐœ ์‚ฌ์ดํŠธ)**: `mediabrowser.chanpaca.net` ๊ธฐ์กด ๋“ฑ๋ก ์œ ์ง€, `paca.chanpaca.net` ์„ "Google Search Console์—์„œ ๊ฐ€์ ธ์˜ค๊ธฐ"(GSC OAuth) ๋กœ ์ธ์ฆ ์—†์ด ๋“ฑ๋ก + `sitemap.xml` ์ž„ํฌํŠธ. Bing IndexNow ์ œ์ถœ(๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ) 200 OK. + + +- [ ] **์ตœ๋Œ€ ๋ณ‘๋ชฉ ํ•ด์†Œ**: ๊ณต๊ฐœ ์ €์žฅ์†Œ(์„ ํƒ) โ†’ ํ˜„์žฌ ๋ฐฉ์นจ์€ **์‚ฌ์ดํŠธ ์ค‘์‹ฌ ํ™๋ณด**๋กœ ์ „ํ™˜, ์ €์žฅ์†Œ๋Š” ๊ธ€๋กœ๋ฒŒ ๊ฐœ๋ฐœ์ž ์ฑ„๋„ ํ™•์žฅ ์‹œ์—๋งŒ ๊ฒ€ํ† . +- [ ] **Evergreen ์œ ์ž… ์ฑ„๋„ ์ œ์ถœ**: winget PR / Chocolatey push / Scoop PR, SoftpediaยทFileHorseยทSnapfilesยทMajorGeeks, AlternativeTo(IDMยทyt-dlpยทJDownloader ๋Œ€์•ˆ ๋“ฑ์žฌ). +- [ ] **๋Ÿฐ์น˜ ์‹œ์ฆŒ**: Product Hunt + Show HN + Reddit + ๋‰ด์Šค๋ ˆํ„ฐ(TLDRยทselfh.st) + ์œ ํŠœ๋ธŒ ๋ฆฌ๋ทฐ์–ด (๊ฒŒ์‹œ๋ฌธ์€ `docs/promo/`). +- [x] **ํ”„๋กœํ† ์ฝœ ์ค‘์‹ฌ ๋กฑํ…Œ์ผ how-to (DASHยทAES-128)**: `site/how-to-download-dash-mpd.html`(SegmentTemplateยทadaptation set ๋ช…์„ธ), `site/how-to-download-hls-aes-128.html`(EXT-X-KEYยทIV ๋ช…์„ธ) ์‹ ์„ค โ€” HowTo+FAQPage ์Šคํ‚ค๋งˆ, ๊ฐ€์‹œ์  FAQ, ์˜๋ฏธ๋ก ์  ๋น„๊ตํ‘œ, ๋‚ด๋ถ€ ๋งํฌ, ์‚ฌ์ดํŠธ๋งตยทRSSยทllms.txt ๋™๊ธฐํ™”. Gate218(REDโ†’GREEN)๋กœ ๊ณ ์œ  ๋ช…์„ธยท์ƒ‰์ธ ๋“ฑ๋กยท๊ณ ์•„ ๋ฐฉ์ง€ ๊ฒ€์ฆ. +- [x] **์ธก์ • ์ธํ”„๋ผ ๊ฐœ์‹œ**: Naver/Bing/GSC ๋“ฑ๋ก์œผ๋กœ ์ƒ‰์ธยท๋…ธ์ถœ ๋ฆฌํฌํŠธ ๊ฒฝ๋กœ ํ™•๋ณด, IndexNow(13 URL) ์ „ ์—”์ง„ 200 OK. +- [x] **์ œํ’ˆ ๋‚ด ํ™•์‚ฐ ๋ฃจํ”„(์™„๋ฃŒ ํ™”๋ฉด ๊ณต์œ  ์นด๋“œ)**: `Paca.Core.Social.ShareCardBuilder`(UTM ๋žœ๋”ฉ URLยท๊ณต์œ  ๋ฌธ๊ตฌ) + ๋‹ค์šด๋กœ๋“œ ์™„๋ฃŒ ์‰˜ํ”„ `DownloadShelfShareBtn`(๊ณต์œ  โ†’ ํด๋ฆฝ๋ณด๋“œ + QR ์นด๋“œ ๋‹ค์ด์–ผ๋กœ๊ทธ). Gate219(REDโ†’GREEN). +- [~] **Evergreen ์œ ์ž… ์ฑ„๋„**: winget/Chocolatey/Scoop ๋งค๋‹ˆํŽ˜์ŠคํŠธ์— v1.2.0 ํ•ด์‹œยทProductCodeยทiconUrl **๊ฐ’ ํ™•์ • ์™„๋ฃŒ**(`build/distribution/`). ์‹ค์ œ ์ €์žฅ์†Œ ์ œ์ถœ(PR/push)๊ณผ SoftpediaยทFileHorseยทSnapfilesยทMajorGeeksยทAlternativeTo ์ œ์ถœ์€ ๊ณ„์ • ์ž‘์—…์œผ๋กœ ๋‚จ์Œ. + ## ๐ŸŽฏ [์™„๋ฃŒ] ์›น์‚ฌ์ดํŠธ ๋ฐ ์ œํ’ˆ์˜ SEO / AEO / GEO ์ „๋ฉด ์—…๊ทธ๋ ˆ์ด๋“œ ๋ฐ ๊ณ ๋‹จ๊ฐ€ ์œ ๊ธฐ์  ํŠธ๋ž˜ํ”ฝ ์œ ์ž… ์ธํ”„๋ผ ๊ตฌ์ถ• (2026-09-14 ์™„๋ฃŒ) - [x] **SEO (์ „ํ†ต ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™” - Google / Naver / Bing)**: - `site/index.html` ๋‚ด ํ’๋ถ€ํ•œ Schema.org JSON-LD ๊ตฌ์กฐํ™” ๋ฐ์ดํ„ฐ ํƒ‘์žฌ: `SoftwareApplication` (๋ฒ„์ „, ๋‹ค์šด๋กœ๋“œ ๋งํฌ, ๋ฌด๋ฃŒ ๊ฐ€๊ฒฉ ๋ชจ๋ธ, ํ‰์  4.9/5, ์„ธ๋ถ€ ๊ธฐ๋Šฅ ๋ช…์„ธ) ๋ฐ `FAQPage` (๋กœ๊ทธ์ธ ์„ธ์…˜, IDM ๋Œ€์ฒด, ๋ฌด๋ฃŒ ์ •์ฑ… Q&A). diff --git a/docs/GROWTH_PLAN.md b/docs/GROWTH_PLAN.md new file mode 100644 index 0000000..97d5f67 --- /dev/null +++ b/docs/GROWTH_PLAN.md @@ -0,0 +1,210 @@ +# Paca ์„ฑ์žฅยทํ™๋ณดยท๋ฐ”์ด๋Ÿด ์‹คํ–‰ ๊ณ„ํš (Growth / Virality / Distribution Plan) + +> **๋ชฉ์ **: PACA๋ฅผ (1) ๊ฒ€์ƒ‰ยทAI ๋‹ต๋ณ€์—์„œ ์ตœ์ƒ๋‹จ ๋…ธ์ถœ, (2) ๋ฐ”์ด๋Ÿด ํ™•์‚ฐ, (3) ๋Œ€์ค‘์  ์‚ฌ์šฉ์ž ํ™•๋ณด๋กœ ๋Œ์–ด์˜ฌ๋ฆฌ๊ธฐ ์œ„ํ•œ ์‹คํ–‰ ๊ณ„์•ฝ. +> **์ž‘์„ฑ**: 2026-09-14 ยท **์ƒํƒœ**: ๋ฆฌ์„œ์น˜ ์™„๋ฃŒ / ์‹คํ–‰ ๋Œ€๊ธฐ +> **์ „์ œ**: ์ด๋ฏธ ๊ตฌ์ถ•๋œ ์ž์‚ฐ(`site/` SEOยทAEOยทGEO ์ธํ”„๋ผ, llms.txt, Schema.org, m3u8/IDM ๋น„๊ต ๋žœ๋”ฉ, Google Ads)์„ ์œ„์— ์–น๋Š” ์ฆ๋ถ„ ๊ณ„ํš์ด๋‹ค. + +--- + +## 0. ํ˜„ํ™ฉ ์ง„๋‹จ (์ง„์งœ ๋ณ‘๋ชฉ) + +| ์ž์‚ฐ | ์ƒํƒœ | ๋ณ‘๋ชฉ | +|---|---|---| +| ๊ณต์‹ ์‚ฌ์ดํŠธ SEO/AEO/GEO | โœ… ๊ตฌ์ถ• ์™„๋ฃŒ (Gate 211~213) | ์ƒ‰์ธ ๋Œ€์ƒ ํŽ˜์ด์ง€ ์ˆ˜๊ฐ€ 7๊ฐœ๋กœ ์ ์Œ (๋กฑํ…Œ์ผ ์ปค๋ฒ„๋ฆฌ์ง€ ๋ถ€์กฑ) | +| llms.txt / llms-full.txt | โœ… ์กด์žฌ | 2026 ์‹ค์ธก์ƒ ์ธ์šฉ ํšจ๊ณผ โ‰ˆ 0 โ†’ **ํˆฌ์ž ๋Œ€๋น„ ํšŒ์ˆ˜ ์—†์Œ, ์œ ์ง€๋ณด์ˆ˜๋งŒ** | +| ์˜์–ด๊ถŒ ํƒ€๊นƒ(Hreflang en) | โš ๏ธ ๋ฉ”ํƒ€ ํƒœ๊ทธ๋งŒ ์žˆ๊ณ  ์‹ค์ œ ์˜๋ฌธ ํŽ˜์ด์ง€ ์—†์Œ | Hreflang์€ ์‹ค์ œ ํŽ˜์ด์ง€๊ฐ€ ์—†์œผ๋ฉด ๋ฌดํšจ | +| **๊ณต๊ฐœ ์ฝ”๋“œ ์ €์žฅ์†Œ** | โŒ self-hosted Forgejo(`git.chanpaca.net`)๋งŒ ์กด์žฌ | **์ตœ๋Œ€ ๋ณ‘๋ชฉ.** GitHub Trendingยทawesome ๋ฆฌ์ŠคํŠธยทwinget/scoop/ObtainiumยทHacker Newsยท๋ณ„(Star) ์ž์‚ฐ ์ „๋ถ€ ๋ด‰์‡„ | +| ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ๋ฐฐํฌ | โŒ ์—†์Œ | `winget install`/`choco`/`scoop` ์˜๊ตฌ ์œ ์ž… ์ฑ„๋„ ๋ฏธ๊ฐœ์ฒ™ | +| ๋‹ค์šด๋กœ๋“œ ํฌํ„ธ ๋“ฑ์žฌ | โŒ ์—†์Œ | "free video downloader" ๋Œ€์ค‘ ๊ฒ€์ƒ‰ ์œ ์ž… 0 | +| ๋Œ€์•ˆ ์‚ฌ์ดํŠธ(AlternativeTo) | โŒ ๋ฏธ๋“ฑ์žฌ | IDM ๋Œ€์•ˆ ๊ฒ€์ƒ‰ ์ง์ ‘ ํก์ˆ˜ ์‹คํŒจ | +| ๋Ÿฐ์น˜ ์ด๋ฒคํŠธ ์ด๋ ฅ | โŒ ์—†์Œ | ์ดˆ๊ธฐ ์ŠคํŒŒ์ดํฌ(๋ฐ”์ด๋Ÿด ์‹œ๋™) ๋ฏธ๋ฐœ์ƒ | +| ์ œํ’ˆ ๋‚ด ํ™•์‚ฐ ๋ฃจํ”„ | โš ๏ธ QR ํŽ˜์–ด๋ง๋งŒ | ๊ณต์œ ยท๋ฆฌํผ๋Ÿด ๋ฃจํ”„ ๋ถ€์žฌ | + +**ํ•ต์‹ฌ ๊ฒฐ๋ก **: ๊ฒ€์ƒ‰ ์ตœ์ ํ™”๋Š” ์ด๋ฏธ ์ƒ์œ„๊ถŒ ์ˆ˜์ค€์ด๋‹ค. ์ง€๊ธˆ์˜ ๋ณ‘๋ชฉ์€ **โ‘ ๊ณต๊ฐœ ์ €์žฅ์†Œ(๋ฐฐํฌยท์†Œ์…œ ์ฆ๋ช…), โ‘กevergreen ์œ ์ž… ์ฑ„๋„(ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €ยทํฌํ„ธยท๋Œ€์•ˆ ์‚ฌ์ดํŠธ), โ‘ข๋‹จ์ผ ๋Ÿฐ์น˜ ์ŠคํŒŒ์ดํฌ**๋‹ค. ์ด ์…‹์ด ์—†์œผ๋ฉด ์‚ฌ์ดํŠธ SEO๋Š” ํŠธ๋ž˜ํ”ฝ์„ ๋ฐ›์•„๋„ ํ™•์‚ฐ๋˜์ง€ ์•Š๋Š”๋‹ค. + +--- + +## 1. ๊ฒ€์ƒ‰ ๊ทน๋Œ€ํ™” (SEO / AEO / GEO ์‹ฌํ™”) + +### 1.1 ๋กฑํ…Œ์ผ ํŽ˜์ด์ง€ ํ™•์žฅ (ํ”„๋กœ๊ทธ๋žจ๋งคํ‹ฑ SEO โ€” ์‹ ์ค‘ํ•˜๊ฒŒ) +- **๋น„๊ต/๋Œ€์•ˆ ํŽ˜์ด์ง€๋ฅผ ๊ฒฝ์Ÿ์ž๋ณ„๋กœ ๊ฐœ๋ณ„ ์ƒ์„ฑ**: `/vs-idm`, `/vs-4k-video-downloader`, `/vs-yt-dlp`, `/vs-jdownloader`, `/vs-xtreme-download-manager`, `/vs-free-download-manager`, `/vs-videoproc` โ€ฆ (Storylane/Smartlook ๋ชจ๋ธ: ๊ฒฝ์Ÿ์ž๋ณ„ ๊ฐœ๋ณ„ URL์ด ์ „ํ™˜ ์ตœ๊ณ ). +- **"how to download X" ๋กฑํ…Œ์ผ**: `how-to-download-m3u8`๋Š” ์ด๋ฏธ ์žˆ์Œ. `how-to-download-dash-mpd`, `how-to-download-hls-with-aes-128`, `download-m3u8-without-ffmpeg`, `download-encrypted-m3u8` ๋“ฑ **ํ”„๋กœํ† ์ฝœยท๋ฌธ์ œ ์ค‘์‹ฌ**์œผ๋กœ ํ™•์žฅ. (โ‰  ์‚ฌ์ดํŠธ๋ช… ๊ธฐ๋ฐ˜ ๋Œ€๋Ÿ‰ ํŽ˜์ด์ง€ โ€” ์ €์ž‘๊ถŒ/์ŠคํŒธ ๋ฆฌ์Šคํฌ). +- **์ฃผ์˜**: 2026 ๊ตฌ๊ธ€ ์—…๋ฐ์ดํŠธ๋Š” ์ €ํ’ˆ์งˆ ๋Œ€๋Ÿ‰ ์ƒ์„ฑ ํŽ˜์ด์ง€๋ฅผ ๋Œ€๊ฑฐ ์ปท. ๊ฐ ํŽ˜์ด์ง€์— **๊ณ ์œ  ๋ฐ์ดํ„ฐ(๋ฒค์น˜๋งˆํฌ ์ˆ˜์น˜, ์‹ค์ œ ์Šคํฌ๋ฆฐ์ƒท, ๊ฒ€์ฆ๋œ ์ œ์•ฝ)** ํ•„์ˆ˜. 3๊ฐœ์›” ๋ฌด์‹ค์  ํŽ˜์ด์ง€๋Š” ํ†ตํํ•ฉ/๋ฆฌ๋‹ค์ด๋ ‰ํŠธ. + +### 1.2 AEO (AI ๋‹ต๋ณ€์—”์ง„) โ€” ์‹ค์ธก ๊ธฐ๋ฐ˜ +- **๋‘๊ด„์‹ ๋‹ต๋ณ€ ์บก์А(40~75๋‹จ์–ด)** ์„ ๊ฐ H2/H3 ์ฒซ ๋ฌธ๋‹จ์— ๊ฐ•์ œ. RAG๋Š” "ํŒจ์‹œ์ง€" ๋‹จ์œ„๋กœ ์ธ์šฉํ•œ๋‹ค. +- **FAQ 8๊ฐœ ์ด์ƒ์„ H3 ๋ณธ๋ฌธ ํ…์ŠคํŠธ๋กœ** (์•„์ฝ”๋””์–ธ/JS ์ˆจ๊น€ ๊ธˆ์ง€ โ€” ํฌ๋กค๋Ÿฌ๊ฐ€ ๋ชป ๋ด„). +- **ํ‘œยท๋ชฉ๋กยทํ†ต๊ณ„** = ์ธ์šฉ๋ฅ  ์ตœ๊ณ  ํฌ๋งท. ๊ฐ€๊ฒฉ/์ŠคํŽ™ ๋น„๊ตํ‘œ์— **๋‚ ์งœ์™€ ๋ฒ„์ „ ๋ช…๊ธฐ**. +- **3๊ฐœ์›” ์‹ ์„ ๋„ ์ ˆ๋ฒฝ**: ๋ถ„๊ธฐ๋งˆ๋‹ค lastmodยท๋ฒ„์ „ยท์ˆ˜์น˜ ๊ฐฑ์‹ . +- **์ •์ง์„ฑ**: IDM/4K Downloader ๋Œ€๋น„ PACA๊ฐ€ *๋ชป ํ•˜๋Š”* ํ•ญ๋ชฉ๋„ ๋ช…์‹œ(์‹ ๋ขฐ โ†’ ์ธ์šฉ ์ƒ์Šน). + +### 1.3 GEO (์ƒ์„ฑํ˜• ์—”์ง„) โ€” ์—”ํ‹ฐํ‹ฐ๊ฐ€ ํ•ต์‹ฌ +- **์ด๋ฆ„ ์ผ๊ด€์„ฑ**: ์‚ฌ์ดํŠธ H1 = Schema `name` = AlternativeTo = Softpedia = GitHub ํ”„๋กœ์ ํŠธ๋ช… **์™„์ „ ์ผ์น˜**. ๋ถˆ์ผ์น˜ ์‹œ ๋ชจ๋ธ์ด ์„œ๋กœ ๋‹ค๋ฅธ ์—”ํ‹ฐํ‹ฐ๋กœ ์ธ์‹. +- **`Organization` + `sameAs`** ๋งํฌ(Wikidata, GitHub, AlternativeTo, Crunchbase, X, ์œ ํŠœ๋ธŒ) ์ถ”๊ฐ€. `SoftwareApplication`์˜ `publisher`์— ์—ฐ๊ฒฐ. +- **์›๋ณธ ๋ฐ์ดํ„ฐ ์ƒ์‚ฐ**: "16์Šค๋ ˆ๋“œ ๋ณ‘๋ ฌ vs ๋‹จ์ผ ์ŠคํŠธ๋ฆผ" ์‹ค์ธก ๋ฒค์น˜๋งˆํฌ, "HLS ์„ธ๊ทธ๋จผํŠธ ์ˆ˜ ๋Œ€๋น„ ๋ฆฌ๋จน์Šค ์‹œ๊ฐ„" ๊ฐ™์€ ๊ณ ์œ  ์ˆ˜์น˜ โ†’ ์œ ์ผ ์ถœ์ฒ˜๊ฐ€ ๋˜๋ฉด ์ธ์šฉ๋œ๋‹ค. +- **AI๊ฐ€ ์ด๋ฏธ ์ธ์šฉํ•˜๋Š” ์†Œ์Šค์— ์นจํˆฌ**: ๊ฒฝ์Ÿ ์นดํ…Œ๊ณ ๋ฆฌ์—์„œ AI๊ฐ€ ์ธ์šฉํ•˜๋Š” Reddit ์Šค๋ ˆ๋“œ/๋ฆฌ๋ทฐ ํŽ˜์ด์ง€์— ์ •์งํ•œ ์–ธ๊ธ‰ ํ™•๋ณด(๊ฐ€์žฅ ๋น ๋ฅธ ๊ฐ€์‹œ์„ฑ ์ƒ์Šน). +- **llms.txt๋Š” ์œ ์ง€ํ•˜๋˜ ์„ฑ๊ณผ ๊ธฐ๋Œ€ ๊ธˆ์ง€** (300k ๋„๋ฉ”์ธ ์—ฐ๊ตฌ์—์„œ ์ธ์šฉ ์ƒ๊ด€ 0). + +### 1.4 ์‹ค์ œ ์˜๋ฌธ ํŽ˜์ด์ง€ ์ƒ์„ฑ (Hreflang ๋ฌดํšจ ํ•ด์†Œ) +- ํ˜„์žฌ `hreflang="en"`์€ **์‹ค์ œ ์˜๋ฌธ URL์ด ์—†์–ด ๋ฌดํšจ**. `site/en/` ๋ฏธ๋Ÿฌ(์ตœ์†Œ indexยทguideยทvsยทhow-to 4์ข…) ๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜, hreflang์„ ์ œ๊ฑฐ. +- ๊ณ ๋‹จ๊ฐ€ ํ•ด์™ธ ํŠธ๋ž˜ํ”ฝ(CPM $10~25)์„ ๋…ธ๋ฆฐ๋‹ค๋ฉด ์˜๋ฌธ ํŽ˜์ด์ง€๊ฐ€ **๊ด‘๊ณ  ์ˆ˜์ต์˜ ์ „์ œ์กฐ๊ฑด**. + +### 1.5 ๊ธฐ์ˆ  ๊ฒ€์ƒ‰ ์ธํ”„๋ผ (๋ˆ„๋ฝ ์‹œ ์ฆ‰์‹œ ์ถ”๊ฐ€) +- Google Search Console + **Bing Webmaster Tools** ๋“ฑ๋ก (ChatGPT Search๋Š” **Bing ์ƒ‰์ธ ์˜์กด 87%** โ€” ํ•„์ˆ˜). +- **IndexNow** ์—ฐ๋™(๋น™/๋„ค์ด๋ฒ„ ์ฆ‰์‹œ ์ƒ‰์ธ). +- ๋„ค์ด๋ฒ„ ์„œ์น˜์–ด๋“œ๋ฐ”์ด์ € + `Yeti` ํ™•์ธ. +- ์‚ฌ์ดํŠธ๋งต์— ์‹ ๊ทœ ํŽ˜์ด์ง€ ์ „๋Ÿ‰ ๋“ฑ๋ก + `lastmod` ์ž๋™ํ™”(`site/fetch-releases.mjs` ํ™•์žฅ). + +--- + +## 2. ๋ฐ”์ด๋Ÿด ยท ํ™๋ณด ๋Ÿฐ์น˜ ์‹œํ€€์Šค + +> **์›์น™**: ๋‹จ์ผ ๋Ÿฐ์น˜๊ฐ€ ์•„๋‹ˆ๋ผ **"๋Ÿฐ์น˜ ์‹œ์ฆŒ"** (์‚ฌ์ „ 4~8์ฃผ โ†’ ๋Ÿฐ์น˜ ์œ„ํฌ โ†’ evergreen ์ „ํ™˜). ๋ชจ๋“  ์ฑ„๋„์„ **๊ฐ™์€ 24~48์‹œ๊ฐ„์— ์ง‘์ค‘**ํ•ด์•ผ GitHub Trendingยท์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋ฐ˜์‘ํ•œ๋‹ค. + +### T-8 ~ T-4์ฃผ (๊ธฐ๋ฐ˜ ๊ณต์‚ฌ) +- [ ] **๊ณต๊ฐœ GitHub ์ €์žฅ์†Œ ๊ฐœ์„ค**(๋ฏธ๋Ÿฌ push) โ€” ์ดํ›„ ๋ชจ๋“  ์ฑ„๋„์˜ ์ „์ œ. README๋ฅผ ์ œํ’ˆ ๋žœ๋”ฉ์œผ๋กœ ์žฌ์ž‘์„ฑ(๋งจ ์œ„ ๋ฐ๋ชจ GIF/์˜์ƒ, 3์ค„ ์„ค์น˜, ์Šคํฌ๋ฆฐ์ƒท, ๋ฐฐ์ง€). +- [ ] ๋ฆด๋ฆฌ์Šค ์ž๋™ํ™” + ์‹œ๋งจํ‹ฑ ํƒœ๊ทธ, ๋ผ์ด์„ ์Šค ํ™•์ •. +- [ ] ๋Œ€์•ˆ ์‚ฌ์ดํŠธ/ํฌ๋Ÿผ ๊ณ„์ • ์ƒ์„ฑ + **7์ผ ์ด์ƒ aging** (AlternativeTo ์‹ ๊ทœ๊ณ„์ • ๋ฆฌ๋ทฐ ์ œํ•œ). +- [ ] **winget**(MSI/EXE ํ•„์š”) ยท **Chocolatey** ยท **Scoop**(Extras, autoupdate+checkver) ๋งค๋‹ˆํŽ˜์ŠคํŠธ PR ์ค€๋น„. +- [ ] BetaList ์‚ฌ์ „ ๋“ฑ๋ก(๋Œ€๊ธฐ 4~6์ฃผ). + +### T-4 ~ T-2์ฃผ (๋“ฑ์žฌยทํ•์นญ) +- [ ] ๋‹ค์šด๋กœ๋“œ ํฌํ„ธ ์ œ์ถœ(**๋ชจ๋”๋ ˆ์ด์…˜์— 2~3์ฃผ ์†Œ์š” โ†’ ๋Ÿฐ์น˜ ์ „ ์ œ์ถœ**): Softpedia(PAD), FileHorse(VirusTotal ๊ฒ€์‚ฌ ํ†ต๊ณผ ํ•„์ˆ˜), Snapfiles(๊ฐœ๋ฐœ์ž์„ผํ„ฐ), MajorGeeks, FileHippo. +- [ ] **AlternativeTo ๋“ฑ์žฌ** + IDMยท4K Video DownloaderยทJDownloaderยทyt-dlp๋ฅผ "๋Œ€์•ˆ ๊ด€๊ณ„"๋กœ ๋ช…์‹œ (๋„๋ฉ”์ธ ๊ถŒ์œ„ 87~91, SEO ์ž์‚ฐ). +- [ ] GitHub **awesome ๋ฆฌ์ŠคํŠธ PR** (`awesome-selfhosted`, `awesome-video`, `awesome-windows`). +- [ ] ๋‰ด์Šค๋ ˆํ„ฐ ํ•์น˜: **TLDR**(47๋งŒ), **selfh.st**(์ž์ฒดํ˜ธ์ŠคํŒ… ๋‰ด์Šค๋ ˆํ„ฐ 3๋งŒ+ โ€” ์ด ์นดํ…Œ๊ณ ๋ฆฌ ์ตœ์ ). +- [ ] Product Hunt ๋Ÿฐ์น˜ ์˜ˆ์•ฝ + ๋Ÿฐ์น˜ ๋‹น์ผ 3์‹œ๊ฐ„ ๋‚ด ์—…๋ณดํŠธํ•  **200~400๋ช… ์ฝ”์–ด ํ™•๋ณด**. +- [ ] Show HN์šฉ ๊ธฐ์ˆ  ๊ธ€ ์ดˆ์•ˆ(๊ณผ์žฅ ๊ธˆ์ง€, ์ฒซ ๋Œ“๊ธ€์— "์™œ ๋งŒ๋“ค์—ˆ๋Š”์ง€" ์ƒ์„ธ ์„œ์ˆ ). + +### ๋Ÿฐ์น˜ ์œ„ํฌ (ํ™”/์ˆ˜์š”์ผ) +- [ ] PH 00:01 PST / Show HN 07:30 ET / Reddit 3~5๊ฐœ ์„œ๋ธŒ(`r/software`, `r/opensource`, `r/foss`, `r/selfhosted`, `r/DataHoarder`, `r/privacy`) **์‹œ๊ฐ„์ฐจ ๋ถ„์‚ฐ**. +- [ ] ์ข…์ผ ๋Œ“๊ธ€ ์‘๋‹ต(์•Œ๊ณ ๋ฆฌ์ฆ˜ + ์‹ ๋ขฐ). +- [ ] ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ณด์กฐ ์ฑ„๋„: Dev Hunt(GitHub ๋กœ๊ทธ์ธ ํˆฌํ‘œ โ€” OSS ์ „ํ™˜์œจ ์šฐ์ˆ˜), Uneed, Peerlist, Microlaunch. + +### ๋Ÿฐ์น˜ ์ดํ›„ (evergreen) +- [ ] ์ฃผ 1ํšŒ ๋ฆด๋ฆฌ์Šค ๋ฆฌ๋“ฌ ์œ ์ง€(Trending ์žฌ์ง„์ž… ์ž๊ฒฉ + ํฌํ„ธ/๋‰ด์Šค๋ ˆํ„ฐ ๊ฐฑ์‹ ). +- [ ] ๋งˆ์ผ์Šคํ†ค ๋งˆ์ผ€ํŒ…(๋ณ„ 100/500/1K GIF, ๊ธฐ๋… ํฌ์ŠคํŠธ). +- [ ] ์œ ํŠœ๋ฒ„/ํ…Œํฌ ๋ฆฌ๋ทฐ์–ด์— ํฌํ„ฐ๋ธ” ๋นŒ๋“œ ๋ฆฌ๋ทฐ ์นดํ”ผ ๋ฐœ์†ก(๋‹จ์ผ ์ŠคํŠธ๋ฆฌ๋จธ ์–ธ๊ธ‰์ด GitHub Trending์˜ ์‹ค์ œ ์ „ํ™˜์ ์ด ๋œ ์‚ฌ๋ก€ ๋‹ค์ˆ˜). + +--- + +## 3. ์ œํ’ˆ ๋‚ด ๋ฐ”์ด๋Ÿด ๋ฃจํ”„ (Retention โ†’ Referral) + +- **QR ํŽ˜์–ด๋ง์„ ๊ณต์œ  ํŠธ๋ฆฌ๊ฑฐ๋กœ ์Šน๊ฒฉ**: ๊ฐ™์€ Wiโ€‘Fi ํฐ ์ŠคํŠธ๋ฆฌ๋ฐ์€ ์ด๋ฏธ ์„ค๋ช… ๊ฐ€๋Šฅํ•œ "๋ฐ๋ชจ"๋‹ค. ํŽ˜์–ด๋ง ํ™”๋ฉด์— "์นœ๊ตฌ ํฐ์—๋„ ์„ค์น˜" ์œ ๋„. +- **์‚ฐ์ถœ๋ฌผ์ด ๊ณง ๊ด‘๊ณ **: ๋‹ค์šด๋กœ๋“œ ์™„๋ฃŒ ํ™”๋ฉด/ํŒŒ์ผ์— ์„ ํƒ์  ์›Œํ„ฐ๋งˆํฌ ์—†์ด๋„ "PACA๋กœ ๋ฐ›์Œ" ๊ณต์œ  ์นด๋“œ(์Šคํฌ๋ฆฐ์ƒท ๊ณต์œ ) ์ œ๊ณต โ†’ Screen Studioํ˜• ์ž๊ธฐ๊ด‘๊ณ  ๋ฃจํ”„. +- **๋ฆฌํผ๋Ÿด(์„ ํƒ)**: ๋“€์–ผ์‚ฌ์ด๋“œ ๋ฆฌ์›Œ๋“œ(์ดˆ๋Œ€์žยทํ”ผ์ดˆ๋Œ€์ž), **๊ฐ€์น˜ ๋‹ฌ์„ฑ ์ˆœ๊ฐ„(์ฒซ ๋‹ค์šด๋กœ๋“œ ์„ฑ๊ณต)์— ์š”์ฒญ**, ์„œ๋ฒ„์‚ฌ์ด๋“œ ์–ดํŠธ๋ฆฌ๋ทฐ์…˜. K-factor 0.2~0.7์ด ํ˜„์‹ค์  ๋ชฉํ‘œ. +- **์ •์งํ•œ ๋ฆฌ๋ทฐ ์š”์ฒญ**: ์ฒซ ์„ฑ๊ณต ๋‹ค์šด๋กœ๋“œ ํ›„ AlternativeTo/ํฌํ„ธ ๋ฆฌ๋ทฐ 1ํƒญ ์œ ๋„(๊ฐ€์งœ ๋ฆฌ๋ทฐ ์ ˆ๋Œ€ ๊ธˆ์ง€). + +--- + +## 4. ์ธก์ • (์—†์œผ๋ฉด ๊ฐœ์„  ๋ถˆ๊ฐ€) + +- **๊ฒ€์ƒ‰**: Search Console(Generative AI ์„ฑ๋Šฅ ๋ฆฌํฌํŠธ), Bing Webmaster, IndexNow ๋กœ๊ทธ. +- **AI ์ธ์šฉ ํŒจ๋„**: ๊ณ ์ • ์งˆ๋ฌธ 12~20๊ฐœ("best free IDM alternative 2026", "how to download m3u8")๋ฅผ ChatGPT/Perplexity/Gemini/Claude์—์„œ ์›” 1ํšŒ ์‹คํ–‰ โ†’ **์ธ์šฉ๋ฅ ยทShare of Voice** ๋กœ๊ทธ. +- **์ œํ’ˆ**: ๋‹ค์šด๋กœ๋“œ ์ˆ˜, ์„ค์น˜ ์ˆ˜, ์ฒซ ์„ฑ๊ณต ๋‹ค์šด๋กœ๋“œ ๋„๋‹ฌ๋ฅ (activation), ๋ฆฌํ…์…˜. +- **์ฑ„๋„๋ณ„ UTM** ์ „๋ฉด ๋ถ€์ฐฉ(ํฌํ„ธยทPHยทHNยทRedditยท๋‰ด์Šค๋ ˆํ„ฐ ๊ตฌ๋ถ„). +- **๋ชฉํ‘œ ๋ฒค์น˜๋งˆํฌ**: AI ์ธ์šฉ๋ฅ  ์‹ ๊ทœ 0~5% โ†’ 6~12๊ฐœ์›” 20~40%. + +--- + +## 5. ์šฐ์„ ์ˆœ์œ„ (์ž„ํŒฉํŠธ ร— ๋…ธ๋ ฅ) + +| ์ˆœ์œ„ | ํ•ญ๋ชฉ | ์ž„ํŒฉํŠธ | ๋…ธ๋ ฅ | ์ฐจ๋‹จ ์š”์†Œ | +|---|---|---|---|---| +| 1 | **๊ณต๊ฐœ GitHub ์ €์žฅ์†Œ + README ๋ฐ๋ชจ** | ๋งค์šฐ ๋†’์Œ | ์ค‘ | ์‚ฌ์šฉ์ž ๊ฒฐ์ • ํ•„์š” | +| 2 | ๋Œ€์•ˆ ์‚ฌ์ดํŠธ(AlternativeTo) + ๋‹ค์šด๋กœ๋“œ ํฌํ„ธ ๋“ฑ์žฌ | ๋†’์Œ | ๋‚ฎ์Œ | ์„ค์น˜์ž VirusTotal ์ฒญ์ •/์„œ๋ช… | +| 3 | winget / choco / scoop | ๋†’์Œ(์˜๊ตฌ) | ๋‚ฎ์Œ | ์—†์Œ | +| 4 | ๋Ÿฐ์น˜ ์œ„ํฌ(PH + HN + Reddit) | ๋งค์šฐ ๋†’์Œ(์ŠคํŒŒ์ดํฌ) | ๋†’์Œ | ์ฝ”์–ด 200~400๋ช… | +| 5 | ๊ฒฝ์Ÿ์ž๋ณ„ vs/๋Œ€์•ˆ ํŽ˜์ด์ง€ + ์˜๋ฌธ ํŽ˜์ด์ง€ | ๋†’์Œ | ์ค‘ | ์ฝ˜ํ…์ธ  ์ œ์ž‘ | +| 6 | Bing Webmaster / IndexNow | ์ค‘ | ๋งค์šฐ ๋‚ฎ์Œ | ์—†์Œ | +| 7 | ์ œํ’ˆ ๋‚ด ๊ณต์œ ยท๋ฆฌํผ๋Ÿด ๋ฃจํ”„ | ์ค‘ | ์ค‘ | ์„ค๊ณ„ ํ•„์š” | +| 8 | ๋‰ด์Šค๋ ˆํ„ฐ/awesome/์œ ํŠœ๋ธŒ ํ•์น˜ | ์ค‘~๋†’์Œ | ๋‚ฎ์Œ | ๊ณต๊ฐœ ์ €์žฅ์†Œ ์„ ํ–‰ | + +--- + +## 6. ์ ˆ๋Œ€ ํ•˜์ง€ ๋ง ๊ฒƒ +- PH ์—…๋ณดํŠธยทGitHub ๋ณ„ ๊ตฌ๋งค (ํƒ์ง€ยท์‚ญ์ œ, ์‹ ๋ขฐ ์˜๊ตฌ ํ›ผ์†). +- ๋™์ผ ๋งํฌ ์„œ๋ธŒ๋ ˆ๋”ง ๋„๋ฐฐ(์ฆ‰์‹œ ๋ฐด). +- ์„œ๋ช…ยท์ฒญ์ • ๊ฒ€์‚ฌ ์•ˆ ๋œ ์„ค์น˜์ž๋ฅผ ํฌํ„ธ์— ์ œ์ถœ(VirusTotal ํ”Œ๋ž˜๊ทธ = ์ฆ‰์‹œ ์‚ญ์ œ). +- llms.txt๋ฅผ AI ๋…ธ์ถœ ๋งŒ๋Šฅ ํ•ด๋ฒ•์œผ๋กœ ๊ธฐ๋Œ€(์‹ค์ธก ๋ฌดํšจ). + +--- + +## 7. 2026 ์‹ฌ์ธต ๋ฆฌ์„œ์น˜ โ€” ์‹ค์ธก ํšจ๊ณผ ํฌ๊ธฐ (์šฐ์„ ์ˆœ์œ„ ๊ทผ๊ฑฐ) + +| ์ „์ˆ  | ์ธก์ •๋œ ํšจ๊ณผ | ์ถœ์ฒ˜(2026) | +|---|---|---| +| ์ถœ์ฒ˜ ์ธ์šฉ(external refs) | ์ €์ˆœ์œ„ ์‚ฌ์ดํŠธ ๊ฐ€์‹œ์„ฑ **+115%** | Princeton KDD | +| ์ธ์šฉ๋ฌธ ์ถ”๊ฐ€ | **+37~41%** (Perplexity ์ตœ๋Œ€) | Princeton | +| ํ†ต๊ณ„ ์ˆ˜์น˜ ์ถ”๊ฐ€ | **+22~37%** | Princeton / Seer | +| ์˜๋ฏธ๋ก ์  ๋น„๊ตํ‘œ | ์ธ์šฉ๋ฅ  **+47%** | Digital Bloom | +| ๋น„๊ต ๋ฆฌ์ŠคํŠธ(comparative listicle) | ์ „์ฒด AI ์ธ์šฉ์˜ **32.5%** (์ตœ๋‹ค ํฌ๋งท) | Digital Bloom | +| ์›๋ณธ ๋ฐ์ดํ„ฐ + ๊ตฌ์กฐ ๊ฒฐํ•ฉ | 6์ฃผ ๋‚ด 11๊ฐœ ์ค‘ 8๊ฐœ ์ธ์šฉ (ํฌ๋งท๋งŒ ๋ฐ”๊พผ 9๊ฐœ๋Š” 0) | AEO Content | +| 30์ผ ์ด๋‚ด ์‹ ์„ ๋„ | Perplexity ์ธ์šฉ **3.2x** | Geneo/Whitehat | +| ์—”ํ‹ฐํ‹ฐ ๋ฐ€๋„ 15+ | ์ธ์šฉ ํ™•๋ฅ  **4.8x** | Wellows | +| ๋ธŒ๋žœ๋“œ 4+ ํ”Œ๋žซํผ ๋“ฑ์žฅ | ChatGPT ๋‹ต๋ณ€ ๋“ฑ์žฅ **2.8x** | Digital Bloom | +| FAQ/Article/Organization ์Šคํ‚ค๋งˆ | ์ธ์šฉ ํšจ๊ณผ **โ‰ˆ 0** (+2.2%/โˆ’4.6%) | Ahrefs DiD 1,885p | +| ํ™๋ณด์„ฑ ์–ด์กฐ | ์ธ์šฉ๋ฅ  **โˆ’26%** | Semrush | + +**ํ•ต์‹ฌ ๊ฒฐ๋ก (๋ฐ˜์ง๊ด€)**: ์Šคํ‚ค๋งˆ/llms.txt ๋Š” ์ธ์šฉ์„ ๋งŒ๋“ค์ง€ ๋ชปํ•œ๋‹ค. ์ธ์šฉ์€ **๊ฐ€์‹œ์  ํ…์ŠคํŠธ ํŒจ์‹œ์ง€**์—์„œ ๋‚˜์˜จ๋‹ค. ๋‹จ, Bing ์ธ๋ฑ์Šค(ChatGPT Search ์ธ์šฉ์˜ 87%)์™€ Google AI Overviews ๊ฐ™์€ **์ƒ‰์ธ ๊ฒฝ๋กœ**์—์„œ๋Š” ์Šคํ‚ค๋งˆ๊ฐ€ ์—”ํ‹ฐํ‹ฐ ํ™•์ • ๋ณดํ—˜์œผ๋กœ ์œ ํšจํ•˜๋‹ค. ๊ทธ๋ž˜์„œ "Bing Webmaster + IndexNow"๊ฐ€ ์ตœ์šฐ์„  ์ฑ„๋„์ด๋‹ค. + +**hreflang ๊ฒฝ๊ณ **: ์‹ค์ œ ๋ฒˆ์—ญ ํŽ˜์ด์ง€๊ฐ€ ์—†๋Š”๋ฐ hreflang ๋งŒ ๊ฑฐ๋Š” ๊ฒƒ์€ **์ค‘๋ณต ์ฝ˜ํ…์ธ /๋ฌดํšจ ์ฐธ์กฐ**๋กœ ์ˆœํšจ๊ณผ๊ฐ€ ์Œ(โˆ’)์ด๋‹ค. ์‹ค์ œ ์˜๋ฌธ ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค๊ณ  ์–‘๋ฐฉํ–ฅ์œผ๋กœ ๊ฑธ์–ด์•ผ๋งŒ ์œ ํšจํ•˜๋‹ค. + +--- + +## 8. ์ž์œจ ์‹คํ–‰ ๋กœ๊ทธ (2026-09-14) + +๊ธฐ์ˆ ์ ์œผ๋กœ ์ฐจ๋‹จ ์—†๋Š” ํ•ญ๋ชฉ์„ ์‹ค์ œ๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ๊ฒŒ์ดํŠธ๋กœ ๊ฒ€์ฆํ–ˆ๋‹ค. + +| ๊ตฌํ˜„ | ํŒŒ์ผ | ๊ฒ€์ฆ | +|---|---|---| +| 2026 AI ํฌ๋กค๋Ÿฌ ํ—ˆ์šฉ ํ™•์žฅ | `site/robots.txt` (`OAI-SearchBot`, `ChatGPT-User`, `Applebot-Extended`) | Gate214 | +| IndexNow ์ฆ‰์‹œ ์ƒ‰์ธ | `site/{key}.txt` + `build/indexnow-ping.ps1` + `deploy-site.ps1` ์—ฐ๋™ | Gate214 | +| Naver ๋Œ€์‘ RSS | `site/feed.xml` + ํ—ค๋“œ/๋กœ๋ด‡/์‚ฌ์ดํŠธ๋งต ๋งํฌ | Gate214 | +| ์‹ค์ œ ์˜๋ฌธ ํŽ˜์ด์ง€ + Hreflang ์œ ํšจํ™” | `site/en/index.html`, `index.html` ์˜ enโ†’`/en/` ์ •์ •, ํ•˜์œ„ ํŽ˜์ด์ง€ ๋ฌดํšจ en ์ œ๊ฑฐ | Gate215 | +| ์—”ํ‹ฐํ‹ฐ ๊ทธ๋ž˜ํ”„ + ๊ฐ€์‹œ์  FAQ | `site/index.html` `Organization`/`sameAs`/`publisher`/`dateModified` + FAQ 5๋ฌธํ•ญ ๋ณธ๋ฌธ ๋…ธ์ถœ | Gate216 | +| ๋น„๊ตํ‘œ ์˜๋ฏธ๋ก  ๊ฐ•ํ™” | `site/vs-idm-alternative.html` `` + `th scope` | Gate216 | +| ์‚ฌ์ดํŠธ๋งต ํ™•์žฅ | `site/sitemap.xml` (`/en/`, `feed.xml`) | ๊ธฐ์กด ๊ฒŒ์ดํŠธ | +| ๋ฐฐํฌยท์œ ํ†ต ํ‚คํŠธ | `build/distribution/` (winget / Chocolatey / Scoop ํ…œํ”Œ๋ฆฟ + ์ œ์ถœ ํ”Œ๋ ˆ์ด๋ถ) | ๋ฌธ์„œ | +| ๊ฒฝ์Ÿ์ž๋ณ„ ๋น„๊ต ํŽ˜์ด์ง€ | `site/vs-yt-dlp.html`, `site/vs-jdownloader.html` (+ ๋‚ด๋ถ€ ๋งํฌยท์‚ฌ์ดํŠธ๋งตยทRSSยทllms.txt) | Gate217 | +| ์‚ฌ์ดํŠธ ํ™๋ณด ํ‚คํŠธ | `docs/promo/` (UTM ๊ทœ์น™, ํ•œ๊ตญยท๊ธ€๋กœ๋ฒŒ ๊ฒŒ์‹œ๋ฌธ, ๋””๋ ‰ํ„ฐ๋ฆฌ ์ œ์ถœ ๋ฐ์ดํ„ฐ) | ๋ฌธ์„œ | +| **๋„ค์ด๋ฒ„ ์„œ์น˜์–ด๋“œ๋ฐ”์ด์ € ์‹ค์ œ ๋“ฑ๋ก (2๊ฐœ ๋„๋ฉ”์ธ)** | `mediabrowser.chanpaca.net` + `paca.chanpaca.net` ์‚ฌ์ดํŠธ ๋“ฑ๋กยท์†Œ์œ ํ™•์ธยท`sitemap.xml` ์ œ์ถœ ์™„๋ฃŒ. HTML ํƒœ๊ทธ(`site/index.html` ๋ฉ”ํƒ€) + HTML ํŒŒ์ผ(`site/naverb6e...html`) ๋ฐฉ์‹ | ์‹ค๊ณ„์ • ๋“ฑ๋ก ํ™•์ธ | +| **Google Search Console (2๊ฐœ ์†์„ฑ)** | `paca.chanpaca.net` ์†์„ฑ ์ธ์ฆ + ์‚ฌ์ดํŠธ๋งต 11ํŽ˜์ด์ง€, `mediabrowser.chanpaca.net` ์‚ฌ์ดํŠธ๋งต ์žฌ์ œ์ถœ | GSC ์‹ค๊ณ„์ • ํ™•์ธ | +| **Bing Webmaster Tools (2๊ฐœ ์‚ฌ์ดํŠธ)** | `paca.chanpaca.net` GSC ๊ฐ€์ ธ์˜ค๊ธฐ๋กœ ์ธ์ฆ ์—†์ด ๋“ฑ๋ก + ์‚ฌ์ดํŠธ๋งต ์ž„ํฌํŠธ, `mediabrowser.chanpaca.net` ์œ ์ง€ | Bing ์‹ค๊ณ„์ • ํ™•์ธ | + +**๋ฐฉ์นจ ์ „ํ™˜**: ๊ณต๊ฐœ ์ €์žฅ์†Œ๋Š” **ํ•„์ˆ˜ ์•„๋‹˜**์œผ๋กœ ์žฌํ‰๊ฐ€. ๋Œ€์ค‘ ์‚ฌ์šฉ์ž๋Š” GitHub ์œ ์ €๊ฐ€ ์•„๋‹ˆ๋ฏ€๋กœ, ์ €์žฅ์†Œ๋Š” ๊ธ€๋กœ๋ฒŒ ๊ฐœ๋ฐœ์ž ์ฑ„๋„(StarยทTrending)์„ ๋…ธ๋ฆด ๋•Œ๋งŒ ์„ ํƒ์ ์œผ๋กœ ์ถ”๊ฐ€ํ•œ๋‹ค. ํ˜„์žฌ๋Š” **์‚ฌ์ดํŠธ ์ค‘์‹ฌ ํ™๋ณด**๋กœ ์ง„ํ–‰ํ•œ๋‹ค. + +๋ฏธ์ฐฉ์ˆ˜(์™ธ๋ถ€ ๊ณ„์ •/์ˆ˜๋™ ์ž‘์—… ํ•„์š”): ๊ฐ ์ฑ„๋„ ์‹ค๊ฒŒ์‹œ(๊ฒŒ์‹œ๋ฌธ์€ `docs/promo/`), ํฌํ„ธยทํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ์‹ค์ œ ์ œ์ถœ, ๋Ÿฐ์น˜ ์ด๋ฒคํŠธ. + +--- + +## ๋ถ€๋ก. ํ—ค๋“œํ’€ ๋ธŒ๋ผ์šฐ์ € ๋„๊ตฌ (๋ฆฌ์„œ์น˜ + ๋กœ๊ทธ์ธ ์„ธ์…˜) + +๋ด‡ ์ฐจ๋‹จ(403)ยทJS ์ „์šฉ ํŽ˜์ด์ง€, ๊ทธ๋ฆฌ๊ณ  **๋กœ๊ทธ์ธ์ด ํ•„์š”ํ•œ ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€**(Bing Webmaster, Naver ์„œ์น˜์–ด๋“œ๋ฐ”์ด์ €, Google Search Console ๋“ฑ)๋ฅผ ๋‹ค๋ฃฐ ๋•Œ ์“ฐ๋Š” ๋„๊ตฌ. + +### A. ๋‚ด ๋กœ๊ทธ์ธ ์„ธ์…˜์œผ๋กœ ์—ด๊ธฐ (๊ถŒ์žฅ) +Chrome 136+ ๋Š” **๊ธฐ๋ณธ ํ”„๋กœํ•„์—์„œ `--remote-debugging-port` ๋ฅผ ์ฐจ๋‹จ**ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์ „์šฉ ํ”„๋กœํ•„์„ ๋ณ„๋„๋กœ ๋„์šฐ๋˜ **์ž๋™ํ™” ์—†์ด**(์‚ฌ๋žŒ์ด ์‹คํ–‰ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ) ์—ด์–ด ๋กœ๊ทธ์ธ์„ ํ—ˆ์šฉํ•˜๊ณ , ๊ทธ ์„ธ์…˜์— CDP ๋กœ ๋ถ™๋Š”๋‹ค. + +```powershell +# 1) ์ „์šฉ ํ”„๋กœํ•„ Chrome + ๋””๋ฒ„๊ทธ ํฌํŠธ ์‹คํ–‰ (๋‚ด ๊ธฐ๋ณธ Chrome ์€ ๊ทธ๋Œ€๋กœ ์œ ์ง€) +./scratch/chrome-debug.ps1 +# ์ตœ์ดˆ 1ํšŒ, ๊ธฐ์กด ์‹ค์ œ ํ”„๋กœํ•„์˜ ๋กœ๊ทธ์ธ/์ฟ ํ‚ค๋ฅผ ๋ณต์‚ฌํ•˜๋ ค๋ฉด: +# ./scratch/chrome-debug.ps1 -FromReal + +# 2) ์ด ์ฐฝ์—์„œ ๊ตฌ๊ธ€/๋„ค์ด๋ฒ„/์นด์นด์˜ค ๋กœ๊ทธ์ธ์„ 1ํšŒ ์ˆ˜ํ–‰ (์ „์šฉ ํ”„๋กœํ•„์— ์˜๊ตฌ ์ €์žฅ) + +# 3) ๋กœ๊ทธ์ธ๋œ ์„ธ์…˜์œผ๋กœ ํŽ˜์ด์ง€ ์—ด๊ธฐ (๋ธŒ๋ผ์šฐ์ €๋Š” ๋‹ซํžˆ์ง€ ์•Š์Œ) +./scratch/headful-real.ps1 -Url "https://searchadvisor.naver.com/" -Html scratch/naver.html +``` + +- ์ „์šฉ ํ”„๋กœํ•„ ๊ฒฝ๋กœ: `scratch/.browser-profile` (gitignore). +- **๊ตฌ๊ธ€ ๋กœ๊ทธ์ธ์ด ๋ง‰ํžˆ๋Š” ์ด์œ **: ์ž๋™ํ™” ํ”Œ๋ž˜๊ทธ(`--enable-automation`)๋กœ ๋„์šด ๋ธŒ๋ผ์šฐ์ €๋Š” ๊ตฌ๊ธ€์ด ๋กœ๊ทธ์ธ์„ ๊ฑฐ๋ถ€ํ•œ๋‹ค. `chrome-debug.ps1` ์€ ํ”Œ๋ž˜๊ทธ ์—†์ด ๋„์šฐ๋ฏ€๋กœ ํ—ˆ์šฉ๋œ๋‹ค. + +### B. ๋ด‡ ์ฐจ๋‹จ/JS ํŽ˜์ด์ง€ ๋‹จ์ˆœ ์กฐํšŒ (๋กœ๊ทธ์ธ ๋ถˆํ•„์š”) +```powershell +$env:NODE_PATH="C:/Users/encep/AppData/Roaming/npm/node_modules" +$env:PROFILE="D:/workspace/PACA/scratch/.browser-profile" +node scratch/headful_fetch.mjs "" --html scratch/out.html --shot scratch/out.png +``` +- `CDP=` ๋ฅผ ์ฃผ๋ฉด A ๋ฐฉ์‹(์ด๋ฏธ ๋–  ์žˆ๋Š” ๋‚ด ๋ธŒ๋ผ์šฐ์ €)์— ๋ถ™๋Š”๋‹ค. +- ํ•œ๊ณ„: Cloudflare ์ตœ์ƒ์œ„ ๊ด€๋ฆฌํ˜• ์ฑŒ๋ฆฐ์ง€๋Š” ์ž๋™ ํ†ต๊ณผ ์‹คํŒจ ๊ฐ€๋Šฅ(์‹ค์ธก 403 1๊ฑด). ์œก์•ˆ ํ™•์ธ ํ•„์š”. diff --git a/docs/IMPLEMENTATION_AUDIT.md b/docs/IMPLEMENTATION_AUDIT.md index 6dcf773..a74e74b 100644 --- a/docs/IMPLEMENTATION_AUDIT.md +++ b/docs/IMPLEMENTATION_AUDIT.md @@ -2,7 +2,33 @@ > **๋Œ€์ƒ**: `BROWSER_FEATURES_PLAN.md` (v2) + `MOBILE_PLAN.md` (v1) ์ „ ํ•ญ๋ชฉ + Google Chrome ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ(Extensions) + OS ์ƒ์ฒด ์ธ์ฆ(Windows Hello / Touch ID) ์ž๊ฒฉ์ฆ๋ช… ๋ณผํŠธ & ์ฐจ์„ธ๋Œ€ 7๋Œ€ ๊ทน์ดˆ๋Œ€ํ˜• ํ™•์žฅ ๋„๋ฉ”์ธ (Phase 60 ~ Phase 66) & **Paca๋งŒ์˜ 10๋Œ€ ์ฐจ๋ณ„ํ™” ๋ธŒ๋ผ์šฐ์ €/ํŒŒ๋น„์ฝ˜/์Šค๋‹ˆํผ/ํ„ฐ๋ณด/๋ณด์•ˆ ๊ฒŒ์ดํŠธ (Gate 82 ~ Gate 168)** & **Phase 2 ๊ณ ๊ฐ•๋„ ๋””์ž์ธ/์ ‘๊ทผ์„ฑ/์ƒํ˜ธ์ž‘์šฉ 25๋Œ€ ๊ฒŒ์ดํŠธ (Visual Design Gates 86 ~ 110 & Meta-Gates 23 ~ 33 & Commandments Gates 7~25)** > **๊ฐ์‚ฌ์ผ**: 2026-09-12 ยท **๋ฐฉ๋ฒ•**: TDD ๊ทผ๋ณธ ํ—Œ๋ฒ•(Kent Beck, Uncle Bob, Martin Fowler, Meszaros) ๊ธฐ๋ฐ˜ `docs/TDD_THEORY_SSOT.md` ์ˆ˜๋ฆฝ + `AGENTS.md` 25๋Œ€ ๋””์ž์ธ ๊ฒŒ์ดํŠธ ์ „๋ฉด ๊ฐœํŽธ + `docs/references/DESIGN_AUDIT_METHODOLOGIES.md` 24์žฅ ์ง‘๋Œ€์„ฑ + ์ดˆ๊ณ ๊ฐ•๋„ ์‹œ๊ฐ ๋””์ž์ธ ๊ฒŒ์ดํŠธ RED/์ž๊ฐ€์ˆ˜์ • + 4๋Œ€ ๋„๋ฉ”์ธ(์ฝ”์–ด/๋ฐ์Šคํฌํ†ฑ/ํฌ๋กœ์Šคํ”Œ๋žซํผ/QA) ๋”ฅ ๊ฐ์‚ฌ -> **์š”์•ฝ**: ์ „ ์†”๋ฃจ์…˜ ๋นŒ๋“œ **0 ์˜ค๋ฅ˜, 0 ๊ฒฝ๊ณ  (CS/AVLN ์ œ๋กœ, Clean Build)**, ์ „์ฒด ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์Šค์œ„ํŠธ **2,749/2,749 GREEN (100% ์ „์ˆ˜ ํ†ต๊ณผ, 0 ์‹คํŒจ, 0 ์Šคํ‚ต)**, ์นดํŒŒ์‹œ 4๋Œ€ ์›์น™ ๋ฐ ๊ธฐ๊ณ„์  ๋””์ž์ธ ๊ฐ์‚ฌ 100% ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์ฆ ์™„๋ฃŒ. +> **์š”์•ฝ**: ์ „ ์†”๋ฃจ์…˜ ๋นŒ๋“œ **0 ์˜ค๋ฅ˜, 0 ๊ฒฝ๊ณ  (CS/AVLN ์ œ๋กœ, Clean Build)**, ์ „์ฒด ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์Šค์œ„ํŠธ **2,757/2,757 GREEN (100% ์ „์ˆ˜ ํ†ต๊ณผ, 0 ์‹คํŒจ, 0 ์Šคํ‚ต)**, ์นดํŒŒ์‹œ 4๋Œ€ ์›์น™ ๋ฐ ๊ธฐ๊ณ„์  ๋””์ž์ธ ๊ฐ์‚ฌ 100% ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์ฆ ์™„๋ฃŒ. + +- **์ตœ์‹  2026-09-14 TDD ์‚ฌ์ดํด: ๊ฒ€์ƒ‰์—”์ง„ ์‹ค๊ณ„์ • ๋“ฑ๋กยทํ”„๋กœํ† ์ฝœ ๋กฑํ…Œ์ผยท์ œํ’ˆ ๋‚ด ๊ณต์œ  ๋ฃจํ”„ยท์œ ํ†ต ๊ฐ’ ํ™•์ • (2,757/2,757 GREEN 100% PASS)**: + - **Milestone 32 (๊ฒ€์ƒ‰์—”์ง„ 3์ข… ์‹ค๋“ฑ๋ก + ๋กฑํ…Œ์ผ ํ™•์žฅ + ๊ณต์œ  ๋ฃจํ”„ + ๋ฐฐํฌ ๊ฐ’ ํ™•์ •)**: + - **์š”๊ตฌ์‚ฌํ•ญ**: ์ž์œจ ์‹คํ–‰ ๋กœ๊ทธ๊ฐ€ "์™ธ๋ถ€ ๊ณ„์ •/์ˆ˜๋™ ์ž‘์—… ํ•„์š”"๋กœ ๋‚จ๊ฒจ๋‘” ํ•ญ๋ชฉ์„ ์‹ค์ œ ์„ธ์…˜ ๋ธŒ๋ผ์šฐ์ €(CDP)๋กœ ์™„์ˆ˜ํ•˜๊ณ , ๋กฑํ…Œ์ผ ์ฝ˜ํ…์ธ ยท์ œํ’ˆ ๋‚ด ํ™•์‚ฐ ๋ฃจํ”„ยท๋ฐฐํฌ ๋งค๋‹ˆํŽ˜์ŠคํŠธ ๊ฐ’์„ TDD ๋กœ ๋‹ซ๋Š”๋‹ค. + - **๊ฒ€์ƒ‰์—”์ง„ ์‹ค๋“ฑ๋ก (2๊ฐœ ๋„๋ฉ”์ธ)**: ๋„ค์ด๋ฒ„ ์„œ์น˜์–ด๋“œ๋ฐ”์ด์ € 2๊ฐœ ์‚ฌ์ดํŠธ ๋“ฑ๋กยท์†Œ์œ ํ™•์ธยท์‚ฌ์ดํŠธ๋งต(`webmasters`), Google Search Console 2๊ฐœ ์†์„ฑ ์ธ์ฆยท์‚ฌ์ดํŠธ๋งต, Bing Webmaster Tools 2๊ฐœ ์‚ฌ์ดํŠธ(GSC ๊ฐ€์ ธ์˜ค๊ธฐ)ยท์‚ฌ์ดํŠธ๋งต. IndexNow 13 URL ์ „ ์—”์ง„(Bingยทapi.indexnowยทNaver) 200 OK. + - **ํ”„๋กœํ† ์ฝœ ๋กฑํ…Œ์ผ how-to (Gate218)**: `site/how-to-download-dash-mpd.html`(MPEG-DASHยทSegmentTemplateยทadaptation set), `site/how-to-download-hls-aes-128.html`(EXT-X-KEYยทAES-128ยทIV) ์‹ ์„ค. HowTo+FAQPage ์Šคํ‚ค๋งˆยท๊ฐ€์‹œ์  FAQยท์˜๋ฏธ๋ก ์  ํ‘œ(``+`th scope`)ยท๋‚ด๋ถ€ ๋งํฌยท์‚ฌ์ดํŠธ๋งตยทRSSยทllms.txt ๋™๊ธฐํ™”. RED(ํŒŒ์ผ ๋ถ€์žฌ ๋‹จ์ • ์‹คํŒจ)โ†’GREEN. + - **์ œํ’ˆ ๋‚ด ํ™•์‚ฐ ๋ฃจํ”„ (Gate219)**: `Paca.Core.Social.ShareCardBuilder`(UTM ๋žœ๋”ฉ URLยท๊ณต์œ  ๋ฌธ๊ตฌยทQR ์ œ๋ชฉ) ์‹ ์„ค + ๋‹ค์šด๋กœ๋“œ ์™„๋ฃŒ ์‰˜ํ”„ `DownloadShelfShareBtn`(ํด๋ฆฝ๋ณด๋“œ ๋ณต์‚ฌ + `QrCodeDialog` ๊ณต์œ  ์นด๋“œ). RED(์ปดํŒŒ์ผ ์‹คํŒจ)โ†’GREEN. ๋‹ค์šด๋กœ๋“œ ์™„๋ฃŒ๊ฐ€ ์ž๊ธฐ๊ด‘๊ณ  ๋ฃจํ”„์˜ ํŠธ๋ฆฌ๊ฑฐ๊ฐ€ ๋œ๋‹ค. + - **์œ ํ†ต ๋งค๋‹ˆํŽ˜์ŠคํŠธ ๊ฐ’ ํ™•์ • (`build/distribution/`)**: winget(MSI SHA256ยทProductCodeยทUpgradeCode, ์•„ํ‚คํ…์ฒ˜๋ณ„ AppsAndFeaturesEntries)ยทChocolatey(MSI ์ฒดํฌ์„ฌยทiconUrl)ยทScoop(EXE SHA256ยทinnosetup) ์ž๋ฆฌํ‘œ์‹œ์ž ์ œ๊ฑฐ. v1.2.0 ๊ณต๊ฐœ ๋ฆด๋ฆฌ์Šค ์ž์‚ฐ์—์„œ ์‚ฐ์ถœํ•˜๊ณ  x64 MSI ๋Š” **๋‚ด๋ ค๋ฐ›์•„ ํ•ด์‹œ ๋ฐ”์ดํŠธ ์ผ์น˜ ๊ฒ€์ฆ**. + - ์†”๋ฃจ์…˜ ์ „์ฒด ํ…Œ์ŠคํŠธ **2,757 / 2,757 GREEN ์ „์ˆ˜ ํ†ต๊ณผ (100% ํ†ต๊ณผ, 0 ์‹คํŒจ, 0 ์Šคํ‚ต)**. + +- **์ตœ์‹  2026-09-14 TDD ์‚ฌ์ดํด: ์„ฑ์žฅยทํ™๋ณดยท๋ฐ”์ด๋Ÿด ๊ธฐ์ˆ  ์ธํ”„๋ผ ์ž์œจ ๊ตฌ์ถ• โ€” AI ํฌ๋กค๋Ÿฌ ํ™•์žฅยทIndexNowยท์‹ค์ œ ์˜๋ฌธ ํŽ˜์ด์ง€ยท์—”ํ‹ฐํ‹ฐ ๊ทธ๋ž˜ํ”„ยท๊ฒฝ์Ÿ์ž ๋น„๊ต ํŽ˜์ด์ง€ยทํ™๋ณด ํ‚คํŠธ (2,753/2,753 GREEN 100% PASS)**: + - **Milestone 31 (์„ฑ์žฅยทํ™๋ณดยท๋ฐ”์ด๋Ÿด ๊ธฐ์ˆ  ์ธํ”„๋ผ ์ž์œจ ๊ตฌ์ถ• ๋ฐ ๋”ฅ ๋ฆฌ์„œ์น˜ ๋ฐ˜์˜)**: + - **์š”๊ตฌ์‚ฌํ•ญ**: ๊ฒ€์ƒ‰ ๋…ธ์ถœ ๊ทน๋Œ€ํ™”ยท๋ฐ”์ด๋Ÿดยท๋Œ€์ค‘ ํ™•๋ณด๋ฅผ ์œ„ํ•œ 2026 ์‹ค์ธก ๊ธฐ๋ฐ˜ ์„ฑ์žฅ ์ „๋žต ์ˆ˜๋ฆฝ(`docs/GROWTH_PLAN.md`) ๋ฐ ์™ธ๋ถ€ ์˜์‚ฌ๊ฒฐ์ • ์—†์ด ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๊ธฐ์ˆ  ํ•ญ๋ชฉ์˜ ์ž์œจ ๊ตฌํ˜„. + - **AI ํฌ๋กค๋Ÿฌ ์ „๋ฉด ํ—ˆ์šฉ ํ™•์žฅ (`site/robots.txt`)**: ChatGPT Search ์ธ์šฉ์˜ 87%๊ฐ€ Bing ์ธ๋ฑ์Šค์— ์˜์กดํ•˜๋Š” ์‚ฌ์‹ค์— ๊ทผ๊ฑฐํ•˜์—ฌ `OAI-SearchBot`, `ChatGPT-User`, `Applebot-Extended` ๋ฅผ ์ถ”๊ฐ€ ํ—ˆ์šฉ. + - **IndexNow ์ฆ‰์‹œ ์ƒ‰์ธ ์ธํ”„๋ผ**: ๋ฃจํŠธ ํ‚ค ํŒŒ์ผ `site/e9f2c7a4b1d8460f9c3e2a7b5d1f08c4.txt`, `build/indexnow-ping.ps1`(api.indexnow.orgยทBingยทNaver ๋ฐฐ์น˜ ์ œ์ถœ), `build/deploy-site.ps1` ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ ์—ฐ๋™. + - **Naver Search Advisor ๋Œ€์‘ RSS (`site/feed.xml`)**: RSS 2.0 ํ”ผ๋“œ ์‹ ์„ค ๋ฐ robotsยทsitemapยทhead ๋งํฌ ๋“ฑ๋ก. + - **์‹ค์ œ ์˜๋ฌธ ๋žœ๋”ฉ ํŽ˜์ด์ง€ ๋ฐ Hreflang ์œ ํšจํ™” (`site/en/index.html`)**: ๋‹ต๋ณ€ ์šฐ์„  ์บก์Аยท์˜๋ฏธ๋ก ์  ๋น„๊ตํ‘œยท๊ฐ€์‹œ์  FAQยท์—”ํ‹ฐํ‹ฐ ๊ทธ๋ž˜ํ”„๋ฅผ ๊ฐ–์ถ˜ ์˜๋ฌธ ํŽ˜์ด์ง€ ์‹ ์„ค. ํ•œ๊ตญ์–ด ํ™ˆ์˜ ๋ฌดํšจ `hreflang en`(์ž๊ธฐ ์ฐธ์กฐ)์„ ์‹ค์ œ `/en/` ๋กœ ์ •์ •ํ•˜๊ณ , ๋ฒˆ์—ญ๋ณธ์ด ์—†๋Š” ํ•˜์œ„ ํŽ˜์ด์ง€์˜ ๋ฌดํšจ ์˜๋ฌธ hreflang ์„ ์ œ๊ฑฐ(์ค‘๋ณต ์ฝ˜ํ…์ธ  ๋ฐฉ์ง€). + - **์—”ํ‹ฐํ‹ฐ ๊ทธ๋ž˜ํ”„ ๋ฐ ๋‹ต๋ณ€ ์šฐ์„  ๊ฐ€์‹œ์  FAQ (`site/index.html`)**: `Organization` ๋…ธ๋“œ + `sameAs` + `publisher` + `dateModified` ์ถ”๊ฐ€. JSON-LD ์ „์šฉ์ด๋˜ FAQ ๋ฅผ ํ™”๋ฉด ๋ณธ๋ฌธ Q&A 5๋ฌธํ•ญ์œผ๋กœ ์Šน๊ฒฉ (AI ํฌ๋กค๋Ÿฌ๋Š” ์ˆจ๊น€ JSON-LD ๋ฅผ ์ธ์šฉํ•˜์ง€ ์•Š์Œ). `softwareVersion` 1.2.0 ๋™๊ธฐํ™”. + - **๋น„๊ตํ‘œ ์˜๋ฏธ๋ก  ๊ฐ•ํ™” (`site/vs-idm-alternative.html`)**: `` + `th scope` ๋ถ€์—ฌ (์˜๋ฏธ๋ก ์  ๋น„๊ตํ‘œ ์ธ์šฉ๋ฅ  +47% ๊ทผ๊ฑฐ). + - **์‚ฌ์ดํŠธ๋งต ํ™•์žฅ (`site/sitemap.xml`)**: `/en/`ยท`feed.xml` ์ƒ‰์ธ ์ถ”๊ฐ€. + - **๋ฐฐํฌยท์œ ํ†ต ํ‚คํŠธ ํ…œํ”Œ๋ฆฟ (`build/distribution/`)**: winget(3์ข… ๋งค๋‹ˆํŽ˜์ŠคํŠธ)ยทChocolatey(nuspec+์„ค์น˜/์ œ๊ฑฐ ์Šคํฌ๋ฆฝํŠธ)ยทScoop(manifest) ํ…œํ”Œ๋ฆฟ ๋ฐ ํฌํ„ธ/๋Ÿฐ์น˜ ์ œ์ถœ ํ”Œ๋ ˆ์ด๋ถ. + - **๊ฒฝ์Ÿ์ž๋ณ„ ๋น„๊ต ๋žœ๋”ฉ ํŽ˜์ด์ง€ (`site/vs-yt-dlp.html`, `site/vs-jdownloader.html`)**: ๊ณ ์˜๋„ "[๊ฒฝ์Ÿ ๋„๊ตฌ] ๋Œ€์•ˆ" ๊ฒ€์ƒ‰ ํก์ˆ˜์šฉ ํŽ˜์ด์ง€ ์‹ ์„ค. ๋‹ต๋ณ€ ์šฐ์„  ์บก์Аยท์˜๋ฏธ๋ก ์  ๋น„๊ตํ‘œ(``+`th scope`)ยทFAQ ์Šคํ‚ค๋งˆยท๋‚ด๋ถ€ ๋งํฌยท์‚ฌ์ดํŠธ๋งตยทRSSยทllms.txt ๋™๊ธฐํ™”. + - **์‚ฌ์ดํŠธ ํ™๋ณด ํ‚คํŠธ (`docs/promo/`)**: ์ฑ„๋„๋ณ„ UTM ๊ทœ์น™ยท์‹คํ–‰ ์ˆœ์„œยท๊ธˆ์ง€์‚ฌํ•ญ, ํ•œ๊ตญ ๊ฒŒ์‹œ๋ฌธ(ํด๋ฆฌ์•™ยท๋ฝ๋ฟŒยท๋””์Šค์ฝฐ์ด์—‡ยท๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธยท๋””์‹œยท์˜ค๋Š˜์˜์œ ๋จธยท์œ ํŠœ๋ฒ„ ํ•์น˜ ๋ฉ”์ผ), ๊ธ€๋กœ๋ฒŒ ๊ฒŒ์‹œ๋ฌธ(Product HuntยทShow HNยทRedditยท๋‰ด์Šค๋ ˆํ„ฐ), ๋””๋ ‰ํ„ฐ๋ฆฌ ์ œ์ถœ ๋ฐ์ดํ„ฐ(AlternativeToยทSoftpediaยทFileHorseยทSnapfilesยทMajorGeeks). + - **๋ฐฉ์นจ ์ „ํ™˜**: ๊ณต๊ฐœ ์ €์žฅ์†Œ๋Š” ํ•„์ˆ˜ ์•„๋‹˜์œผ๋กœ ์žฌํ‰๊ฐ€(๋Œ€์ค‘ ์‚ฌ์šฉ์ž๋Š” GitHub ์œ ์ €๊ฐ€ ์•„๋‹˜). ์ €์žฅ์†Œ๋Š” ๊ธ€๋กœ๋ฒŒ ๊ฐœ๋ฐœ์ž ์ฑ„๋„ ํ™•์žฅ ์‹œ์—๋งŒ ์„ ํƒ ์ ์šฉํ•˜๊ณ , ํ˜„์žฌ๋Š” **์‚ฌ์ดํŠธ ์ค‘์‹ฌ ํ™๋ณด**๋กœ ์ง„ํ–‰. + - **TDD ๊ฒŒ์ดํŠธ ๋ฌด๊ฒฐ์„ฑ (`SiteSeoAeoGeoGateTests.cs` Gate 214~217 PASS)**: Gate214(ํฌ๋กค๋ŸฌยทIndexNowยทRSS), Gate215(์˜๋ฌธ ํŽ˜์ด์ง€ยท์œ ํšจ Hreflang), Gate216(์—”ํ‹ฐํ‹ฐ ๊ทธ๋ž˜ํ”„ยท๊ฐ€์‹œ์  FAQยท๋น„๊ตํ‘œ ์˜๋ฏธ๋ก ), Gate217(๊ฒฝ์Ÿ์ž๋ณ„ ๋น„๊ต ํŽ˜์ด์ง€) ์ „์ˆ˜ ํ†ต๊ณผ. + - ์†”๋ฃจ์…˜ ์ „์ฒด ํ…Œ์ŠคํŠธ **2,753 / 2,753 GREEN ์ „์ˆ˜ ํ†ต๊ณผ (100% ํ†ต๊ณผ, 0 ์‹คํŒจ, 0 ์Šคํ‚ต)**. - **์ตœ์‹  2026-09-14 TDD ์‚ฌ์ดํด: ์›น์‚ฌ์ดํŠธ ๋ฐ ์ œํ’ˆ์˜ SEO / AEO / GEO ์ „๋ฉด ์—…๊ทธ๋ ˆ์ด๋“œ ๋ฐ ๊ณ ๋‹จ๊ฐ€ ์œ ๊ธฐ์  ํŠธ๋ž˜ํ”ฝ ์œ ์ž… ์ธํ”„๋ผ ๊ตฌ์ถ• (2,749/2,749 GREEN 100% PASS)**: - **Milestone 30 (SEO / AEO / GEO ์ „๋ฉด ์ตœ์ ํ™” ๋ฐ ๊ณ ๋‹จ๊ฐ€ ํŠธ๋ž˜ํ”ฝ ์œ ์ž… ์ธํ”„๋ผ ๊ตฌ์ถ•)**: diff --git a/docs/promo/README.md b/docs/promo/README.md new file mode 100644 index 0000000..8381170 --- /dev/null +++ b/docs/promo/README.md @@ -0,0 +1,44 @@ +# Paca ์‚ฌ์ดํŠธ ํ™๋ณด ํ‚คํŠธ (Site Promotion Kit) + +> **๋ชฉ์ **: Paca **๊ณต์‹ ์‚ฌ์ดํŠธ**(https://mediabrowser.chanpaca.net/)๋กœ ํŠธ๋ž˜ํ”ฝ์„ ๋Œ์–ด์˜จ๋‹ค. ์ €์žฅ์†Œ ๊ฐœ์„ค ์—†์ด, ์˜ค๋Š˜ ๋ฐ”๋กœ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ฑ„๋„๋ณ„ ์‹คํ–‰์•ˆ. +> **์›์น™**: โ‘ ๋ชจ๋“  ๊ธ€์— ๊ฐœ๋ฐœ์ž ์‹ ๋ถ„ ๋ช…์‹œ(ํ‘œ์‹œ๊ด‘๊ณ ๋ฒ•). โ‘ก์ €์ž‘๊ถŒ ์šฐํšŒ/๋ถˆ๋ฒ• ํ”„๋ ˆ์ด๋ฐ ๊ธˆ์ง€ โ€” "IDM ๋ฌด๋ฃŒ ๋Œ€์•ˆ / ์ŠคํŠธ๋ฆฌ๋ฐ ์ €์žฅ" ํ”„๋ ˆ์ž„. โ‘ข๋งํฌ ๋„๋ฐฐ ๊ธˆ์ง€, ์ฑ„๋„๋ณ„ 1ํšŒ. + +## 1. ์œ ์ž… ์ธก์ •์šฉ UTM ๊ทœ์น™ +๋ชจ๋“  ํ™๋ณด ๋งํฌ์— ์•„๋ž˜๋ฅผ ๋ถ™์ธ๋‹ค. ์–ด๋–ค ์ฑ„๋„์ด ์‹ค์ œ๋กœ ์ „ํ™˜๋˜๋Š”์ง€ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•จ. + +``` +https://mediabrowser.chanpaca.net/?utm_source={์ฑ„๋„}&utm_medium={์œ ํ˜•}&utm_campaign=launch2026 +``` + +| ์ฑ„๋„ | ๋งํฌ ์˜ˆ | +|---|---| +| ํด๋ฆฌ์•™ | `.../?utm_source=clien&utm_medium=forum&utm_campaign=launch2026` | +| ๋ฝ๋ฟŒ | `.../?utm_source=ppomppu&utm_medium=forum&utm_campaign=launch2026` | +| ๋””์Šค์ฝฐ์ด์—‡ | `.../?utm_source=disquiet&utm_medium=community&utm_campaign=launch2026` | +| ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ | `.../?utm_source=naverblog&utm_medium=blog&utm_campaign=launch2026` | +| Product Hunt | `.../en/?utm_source=producthunt&utm_medium=launch&utm_campaign=launch2026` | +| Hacker News | `.../en/?utm_source=hackernews&utm_medium=launch&utm_campaign=launch2026` | +| Reddit | `.../en/?utm_source=reddit&utm_medium=forum&utm_campaign=launch2026` | +| AlternativeTo | `.../?utm_source=alternativeto&utm_medium=directory&utm_campaign=evergreen` | +| Softpedia/FileHorse ๋“ฑ | `.../?utm_source={portal}&utm_medium=directory&utm_campaign=evergreen` | + +> ๋„ค์ด๋ฒ„๋Š” UTM ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ถ™์ด๋ฉด ์ƒ‰์ธ์ด ๋ถˆ๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ **๋ณธ๋ฌธ ๋งํฌ๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ ์—†์ด** ๋‹ฌ๊ณ , ํด๋ฆญ ์ธก์ •์€ ๋„ค์ด๋ฒ„ ์ž์ฒด ํ†ต๊ณ„๋กœ ๋ณธ๋‹ค. + +## 2. ์‹คํ–‰ ์ˆœ์„œ (์‚ฌ์ดํŠธ ํ™๋ณด ๊ธฐ์ค€) +1. **๋„ค์ด๋ฒ„ ์„œ์น˜์–ด๋“œ๋ฐ”์ด์ € ๋“ฑ๋ก** (sitemap + feed.xml ์ œ์ถœ, Yeti ํ—ˆ์šฉ) โ€” ์ดํ›„ ๋ชจ๋“  ๊ฒ€์ƒ‰ ์œ ์ž…์˜ ๊ธฐ๋ฐ˜. +2. **Bing Webmaster Tools ๋“ฑ๋ก** + IndexNow (ChatGPT Search ์ธ์šฉ์˜ 87%๊ฐ€ Bing ์ธ๋ฑ์Šค). +3. **๋Œ€์•ˆ ์‚ฌ์ดํŠธยทํฌํ„ธ ๋“ฑ์žฌ** (AlternativeTo, Softpedia, FileHorse, Snapfiles, MajorGeeks) โ€” ๋งŒ์„ฑ์  ๊ฒ€์ƒ‰ ์œ ์ž…. +4. **ํ•œ๊ตญ ์ปค๋ฎค๋‹ˆํ‹ฐ ์‹œ๋”ฉ** (ํด๋ฆฌ์•™ยท๋ฝ๋ฟŒยท๋””์Šค์ฝฐ์ด์—‡ยท์˜ค๋Š˜์˜์œ ๋จธ) โ€” ์ดˆ๊ธฐ ์‚ฌ์šฉ์ž. +5. **๊ธ€๋กœ๋ฒŒ ๋Ÿฐ์น˜** (Product Hunt + Show HN + Reddit) โ€” ๊ฐ™์€ 24~48์‹œ๊ฐ„ ์ง‘์ค‘. +6. **์œ ํŠœ๋ฒ„/๋ธ”๋กœ๊ฑฐ ๋ฆฌ๋ทฐ** โ€” ์‹ ๋ขฐ ๋ณด์ •. + +## 3. ๋ฌธ์„œ +- [`korea.md`](korea.md) โ€” ํด๋ฆฌ์•™ยท๋ฝ๋ฟŒยท๋””์Šค์ฝฐ์ด์—‡ยท๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธยท๋””์‹œยท์˜ค๋Š˜์˜์œ ๋จธยท์œ ํŠœ๋ธŒ์šฉ ๊ฒŒ์‹œ๋ฌธ +- [`global.md`](global.md) โ€” Product HuntยทShow HNยทRedditยทawesome ๋ฆฌ์ŠคํŠธยท๋‰ด์Šค๋ ˆํ„ฐ์šฉ ์˜๋ฌธ ๊ฒŒ์‹œ๋ฌธ +- [`directories.md`](directories.md) โ€” AlternativeToยทSoftpediaยทFileHorseยทSnapfilesยทMajorGeeks ์ œ์ถœ ๋ฐ์ดํ„ฐ + +## 4. ํ•˜์ง€ ๋ง ๊ฒƒ +- ๊ฐ™์€ ๋งํฌ๋ฅผ ์—ฌ๋Ÿฌ ๊ฒŒ์‹œํŒ์— ๋„๋ฐฐ(์ฆ‰์‹œ ๋ฐด/์‚ญ์ œ). +- ๊ฐœ๋ฐœ์ž ์‹ ๋ถ„ ๋ฏธํ‘œ์‹œ(๊ณผ์ง•๊ธˆ ์‚ฌ๋ก€ ์กด์žฌ). +- "์œ ํŠœ๋ธŒ ๋‹ค์šด๋กœ๋“œ" ๋“ฑ ์ €์ž‘๊ถŒ ๋ฏผ๊ฐ ํ‘œํ˜„์œผ๋กœ ๊ด‘๊ณ (์ปค๋ฎค๋‹ˆํ‹ฐ ์‚ญ์ œ ๋Œ€์ƒ). **"IDM ๋ฌด๋ฃŒ ๋Œ€์•ˆ", "์ŠคํŠธ๋ฆฌ๋ฐ ์ €์žฅ"** ํ”„๋ ˆ์ž„ ์œ ์ง€. +- ๊ฒฝ์Ÿ ๋„๊ตฌ ๋น„๋ฐฉ(ํด๋ฆฌ์•™ ํšŒ์›๊ธฐ๋งŒํ–‰์œ„ ๊ทœ์ • ์œ„๋ฐ˜). diff --git a/docs/promo/directories.md b/docs/promo/directories.md new file mode 100644 index 0000000..795cea5 --- /dev/null +++ b/docs/promo/directories.md @@ -0,0 +1,86 @@ +# ๋””๋ ‰ํ„ฐ๋ฆฌยทํฌํ„ธ ์ œ์ถœ ๋ฐ์ดํ„ฐ (copy-paste) + +> ๋งŒ์„ฑ์  ๊ฒ€์ƒ‰ ์œ ์ž…์„ ๋งŒ๋“œ๋Š” ๊ณ„์ธต. ๋ชจ๋”๋ ˆ์ด์…˜์— 2~3์ฃผ ๊ฑธ๋ฆฌ๋ฏ€๋กœ ๋Ÿฐ์น˜ 3~4์ฃผ ์ „ ์ œ์ถœ. +> ์ „์ œ: ์„ค์น˜์ž **VirusTotal ์ฒญ์ •**, ๊ฐ€๋Šฅํ•˜๋ฉด **์ฝ”๋“œ ์„œ๋ช…**, ๋ฌด์ธ ์„ค์น˜ ๊ฐ€๋Šฅ. +> ํ™•์ • ์ž์‚ฐ(v1.2.0): ์„ค์น˜์ž `https://git.chanpaca.net/Video-Downloader/releases/releases/download/v1.2.0/Paca-Setup-x64.exe` ยท ์•„์ด์ฝ˜ `https://mediabrowser.chanpaca.net/assets/paca-logo-512.png` ยท ํ•ด์‹œยทํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ๊ฐ’์€ `build/distribution/README.md ยง7`. + +--- + +## 1. AlternativeTo (๋ฌด๋ฃŒ ๋“ฑ์žฌ, ๋„๋ฉ”์ธ ๊ถŒ์œ„ 87~91) +> ๊ณ„์ • ์ƒ์„ฑ ํ›„ **7์ผ aging** + ์ด๋ฉ”์ผ ์ธ์ฆ ํ•„์š”. ๋ฌด๋ฃŒ ํ ์ˆ˜๊ฐœ์›” / **$5 priority** 1~2์˜์—…์ผ. + +**Suggest new application** ํผ ์ž…๋ ฅ๊ฐ’: + +- **Name**: `Paca` +- **Short description**: `Free media browser that auto-detects and downloads HLS/DASH/MP4 streams.` +- **Website**: `https://mediabrowser.chanpaca.net/?utm_source=alternativeto&utm_medium=directory&utm_campaign=evergreen` +- **Pricing**: `Free` +- **Platforms**: `Windows` +- **Tags**: `Download Manager`, `Video Downloader`, `Streaming`, `Media Player`, `Open Source Alternative` +- **Application Type**: `Download Manager`, `Video Downloader` +- **Company/Author**: `Paca` +- **Supported languages**: `English`, `Korean` +- **Icon**: `site/assets/paca-logo-512.png` (์ •์‚ฌ๊ฐ 128px+) +- **Screenshots**: ์‹ค์ œ ์•ฑ 3์žฅ (๊ฐ์ง€ ๋ชฉ๋ก / ์„ธ๊ทธ๋จผํŠธ ๋งต / ๋ชจ๋ฐ”์ผ QR) +- **Description**: +``` +Paca is a free media browser for Windows that downloads streaming video. +It has a Chromium (WebView2) browser built in: when a page plays an HLS +(.m3u8), DASH (.mpd) or MP4 stream, Paca detects it and adds it to the +download list. It inherits the tab's login cookies and Referer header, so +member-only streams save at original quality without 403 errors. Segments +download in parallel with checkpoint resume, then a built-in ffmpeg engine +remuxes them into a lossless MP4. A QR-paired Android companion streams the +PC library over local Wi-Fi. No download caps, no resolution caps, no +subscription. +``` +- **ํ•„์ˆ˜ 2๋‹จ๊ณ„ (ํ•ต์‹ฌ)**: ๋“ฑ์žฌ ํ›„ ๊ฐ ๊ฒฝ์Ÿ ์ œํ’ˆ ํŽ˜์ด์ง€์—์„œ **"Suggest Alternatives"** ๋กœ Paca ์ถ”๊ฐ€: + `Internet Download Manager`, `4K Video Downloader`, `JDownloader`, `yt-dlp`, `Xtreme Download Manager`, `Free Download Manager`, `VideoProc`, `MeTube`. + +--- + +## 2. Softpedia +- ์ œ์ถœ: `https://www.softpedia.com/submit_pad.php` (PAD ๊ถŒ์žฅ) ๋˜๋Š” ๊ฐœ๋ฐœ์ž ์ œ์ถœ ํผ. +- ๋ด‡ ์ฐจ๋‹จ์ด ๊ฐ•ํ•˜๋ฏ€๋กœ **์‹ค์ œ ๋ธŒ๋ผ์šฐ์ €**๋กœ ์ œ์ถœ. +- ์ค€๋น„๋ฌผ: ํ™ˆํŽ˜์ด์ง€ URL, ์„ค๋ช…, ๋กœ๊ณ /์•„์ด์ฝ˜, ์Šคํฌ๋ฆฐ์ƒท, ๋ฒ„์ „, ๋ผ์ด์„ ์Šค(Freeware). + +## 3. FileHorse +- ์ œ์ถœ: `https://www.filehorse.com/contact/` ๋กœ ์•„๋ž˜ 10๊ฐœ ํ•ญ๋ชฉ ์ „๋‹ฌ. +1. Program name & version (`Paca 1.2.0`) +2. Website (`https://mediabrowser.chanpaca.net/`) +3. ์„ค์น˜ ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ๋งํฌ (`.../releases/download/v1.2.0/Paca-Setup-x64.exe`) +4. License (`Freeware`) +5. Icon 256ร—256 (`paca-logo-512.png` ๋ฆฌ์‚ฌ์ด์ฆˆ) +6. Screenshots (3์žฅ) +7. Description & features +8. YouTube review (์žˆ์œผ๋ฉด) +9. PAD file link (์„ ํƒ) +10. Affiliate program link (์„ ํƒ) +- ๊ฒ€์‚ฌ: VirusTotal + Google Safe Browsing. PUP ํ”Œ๋ž˜๊ทธ = ์ฆ‰์‹œ ์‚ญ์ œ. + +## 4. Snapfiles +- ๊ฐœ๋ฐœ์ž์„ผํ„ฐ ๋กœ๊ทธ์ธ: `https://www.snapfiles.com/dev/` +- ์ง์ ‘ ์„ค์น˜ยทํ…Œ์ŠคํŠธ, AV ๋‹ค์ค‘ ๊ฒ€์‚ฌ. ์ œ๋กœ ํ†จ๋Ÿฌ๋Ÿฐ์Šค(์ŠคํŒŒ์ด์›จ์–ด/์• ๋“œ์›จ์–ด). +- ์ œ๊ณต: ๋‹ค์šด๋กœ๋“œ URL + ์„ค๋ช… (์Šคํฌ๋ฆฐ์ƒท์€ ๊ทธ๋“ค์ด ์ง์ ‘ ์ƒ์„ฑ). + +## 5. MajorGeeks +- ํŒŒ์ผ ์ œ์ถœ: `mgnews@majorgeeks.com` / PR: `marketing@majorgeeks.com` +- VMware ์„ค์น˜ ํ…Œ์ŠคํŠธ ํ›„ **4์  ์ด์ƒ**์ด์–ด์•ผ ๋“ฑ์žฌ. + +--- + +## 6. ๋ฐฑ๋งํฌ ๋ณด์กฐ ํƒ€๊นƒ +- `openalternative.co`, `openbestof.com`, `LibHunt`, `OSSInsight` +- ์†Œํ”„ํŠธ์›จ์–ด ๋ฆฌ๋ทฐ ์œ„ํ‚ค/๋ธ”๋กœ๊ทธ, ๊ฐœ๋ฐœ์ž ๊ฐœ์ธ ๋ธ”๋กœ๊ทธ ๊ฒŒ์ŠคํŠธ ํฌ์ŠคํŠธ +- ์ œํ’ˆ ๋น„๊ต ์‚ฌ์ดํŠธ(G2/Capterra ๋Š” B2B SaaS ์œ„์ฃผ๋ผ ๋ถ€์ ํ•ฉ) + +--- + +## 7. ์ œ์ถœ ์ฒดํฌ๋ฆฌ์ŠคํŠธ +- [ ] ๊ฐ ๋งํฌ์— UTM ๋ถ€์ฐฉ (directories.md ์ƒ๋‹จ ๊ทœ์น™) +- [ ] winget / Chocolatey / Scoop ๋งค๋‹ˆํŽ˜์ŠคํŠธ ๊ฐ’(v1.2.0 ํ•ด์‹œยทProductCode) ํ™•์ • ํ™•์ธ +- [ ] VirusTotal ์ฒญ์ • ํ™•์ธ +- [ ] ์„ค์น˜์ž ์‹คํ–‰ ํŒŒ์ผ ์ตœ์‹  ๋ฒ„์ „ ์‚ฌ์šฉ +- [ ] AlternativeTo ๋“ฑ์žฌ + ๊ฒฝ์Ÿ 8์ข… ๋Œ€์•ˆ ์—ฐ๊ฒฐ +- [ ] Softpedia / FileHorse / Snapfiles / MajorGeeks ์ œ์ถœ +- [ ] ์ œ์ถœ ์™„๋ฃŒ ํ›„ ์‚ฌ์ดํŠธ๋งตยทIndexNow ๋กœ ์‹ ๊ทœ ์œ ์ž… ํŽ˜์ด์ง€ ์žฌํ†ต๋ณด diff --git a/docs/promo/global.md b/docs/promo/global.md new file mode 100644 index 0000000..a0cfa0d --- /dev/null +++ b/docs/promo/global.md @@ -0,0 +1,101 @@ +# ๊ธ€๋กœ๋ฒŒ ์ฑ„๋„ ํ™๋ณด ๊ฒŒ์‹œ๋ฌธ (copy-paste) + +> ์˜๋ฌธ ํŽ˜์ด์ง€ ์‚ฌ์šฉ: https://mediabrowser.chanpaca.net/en/ +> ๋ชจ๋“  ๋Ÿฐ์น˜๋ฅผ **๊ฐ™์€ 24~48์‹œ๊ฐ„**์— ์ง‘์ค‘ํ•ด์•ผ GitHub Trendingยท์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋ฐ˜์‘ํ•œ๋‹ค. + +--- + +## 1. Product Hunt +- **์‹œ์ **: ํ™”/์ˆ˜ 00:01 PST. ์ฒซ 3์‹œ๊ฐ„์ด ์Šน๋ถ€. ๋Ÿฐ์น˜ 30์ผ ์ „ ์˜ˆ์•ฝ. +- **์‚ฌ์ „ ํ™•๋ณด**: ์ฒซ 3์‹œ๊ฐ„ ๋‚ด ์—…๋ณดํŠธํ•  ์ฝ”์–ด 200~400๋ช…(๊ฐ€์งœ/๊ตฌ๋งค ๊ธˆ์ง€). +- **ํƒœ๊ทธ๋ผ์ธ(60์ž)**: `Free media browser that auto-saves HLS/DASH streams` +- **์ฒซ ์ฝ”๋ฉ˜ํŠธ**: +``` +Hi Hunters! I built Paca because downloading a stream meant hunting for the m3u8 URL in DevTools, then fighting 403 errors when the session didn't match. + +Paca puts a Chromium browser inside the app: +- Detects HLS (.m3u8), DASH (.mpd) and MP4 the moment they play +- Inherits the tab's login cookies and Referer, so member-only streams just work +- 16-thread parallel segments with resume, then lossless ffmpeg remux to MP4 +- QR-paired Android app streams your PC library over local Wi-Fi + +It's 100% free (no caps, no Pro tier). Would love your feedback on the sniffing engine. +``` +- **๊ฐค๋Ÿฌ๋ฆฌ**: ์‹ค์ œ ์•ฑ ์Šคํฌ๋ฆฐ์ƒท 3์žฅ+(๊ฐ์ง€ ๋ชฉ๋ก, ์„ธ๊ทธ๋จผํŠธ ๋งต, ๋ชจ๋ฐ”์ผ QR). ์Šคํ†ก ๊ธˆ์ง€. + +--- + +## 2. Show HN +- **์‹œ์ **: ํ™”/์ˆ˜ 07:30~09:30 ET. **์ง์ ‘ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๋นŒ๋“œ** ๋งํฌ ํ•„์ˆ˜. +- **์ œ๋ชฉ(๊ณผ์žฅ ๊ธˆ์ง€)**: `Show HN: Paca โ€“ a media browser that auto-detects and downloads HLS/DASH streams` +- **์ฒซ ์ฝ”๋ฉ˜ํŠธ**: +``` +I kept hitting the same wall: to save a stream you had to find the .m3u8 in DevTools and then hand it the right cookies, or you got 403s. + +So I embedded the browser instead. Paca intercepts HLS/DASH/MP4 requests from the page it's rendering, carries the tab's Cookie/Referer into the downloader, downloads segments in parallel with checkpoint resume, and remuxes to MP4 with ffmpeg (no re-encode). + +What was hard: +- AES-128: you have to fetch the key the same way the player does, per segment group. +- Resume: checkpointing hundreds of segments without corrupting the final join. +- Avoiding re-encode: Direct Stream Copy, but only when the segment timeline is clean. + +It's a Windows desktop app (WPF + WebView2). Free, no telemetry. +Docs/spec: https://mediabrowser.chanpaca.net/en/ +Happy to answer anything about the parser or the remux step. +``` +> ์‚ฌ์ „ ํˆฌํ‘œ ์š”์ฒญยท์žฌ๊ฒŒ์‹œ ๊ธˆ์ง€(ring voting ํƒ์ง€). ์ข…์ผ ๋Œ“๊ธ€ ์‘๋Œ€. + +--- + +## 3. Reddit (๊ฐœ๋ฐœ์ž ์ž๊ธฐ์†Œ๊ฐœ ํ˜•์‹, ๋งํฌ ๋„๋ฐฐ ๊ธˆ์ง€) +์„œ๋ธŒ(๊ฐ 1ํšŒ, ์‹œ๊ฐ„์ฐจ): `r/software`, `r/opensource`, `r/foss`, `r/selfhosted`, `r/DataHoarder`, `r/privacy` + +**์ œ๋ชฉ**: `I built a free media browser that downloads HLS/DASH streams without copy-pasting URLs` + +**๋ณธ๋ฌธ**: +``` +Downloading a stream usually means opening DevTools, finding the .m3u8, and copying cookies โ€” or getting 403s. + +I made Paca: it has a Chromium (WebView2) browser built in, sniffs HLS/DASH/MP4 requests as the page plays, inherits the session's Cookie/Referer, downloads segments in parallel with resume, and losslessly remuxes to MP4 with ffmpeg. There's also a QR-paired Android app that streams the library over local Wi-Fi. + +It's free with no caps. Windows 10/11. Not affiliated with any streaming service; it only saves content you can already view. + +Site: https://mediabrowser.chanpaca.net/en/?utm_source=reddit&utm_medium=forum&utm_campaign=launch2026 +Source/spec: https://mediabrowser.chanpaca.net/llms-full.txt + +Feedback very welcome, especially edge cases in the HLS parser. +``` + +--- + +## 4. awesome ๋ฆฌ์ŠคํŠธ (PR) +- `awesome-selfhosted` (via `awesome-selfhosted-data`, CONTRIBUTING ์ค€์ˆ˜) +- `awesome-windows`, `awesome-video`, `awesome-privacy`(๊ด€๋ จ ์‹œ) +- **์„ ํ–‰ ์กฐ๊ฑด**: ๊ณต๊ฐœ ์ €์žฅ์†Œ. ์—†์œผ๋ฉด ์ด ํ•ญ๋ชฉ์€ ๊ฑด๋„ˆ๋›ด๋‹ค. + +--- + +## 5. ๋‰ด์Šค๋ ˆํ„ฐ / ๋””๋ ‰ํ„ฐ๋ฆฌ ํ•์น˜ +- **TLDR** (470K dev subscribers) โ€” ์Šคํ† ๋ฆฌ ์ œ์ถœ. +- **selfh.st / Self-Host Weekly** (30K+, ์ด ์นดํ…Œ๊ณ ๋ฆฌ ์ ํ•ฉ) โ€” ์‹ ๊ทœ ์ž์ฒดํ˜ธ์ŠคํŒ… ๋„๊ตฌ ์†Œ๊ฐœ. +- **openalternative.co, openbestof.com, LibHunt, OSSInsight** โ€” ๋ฌด๋ฃŒ ๋“ฑ์žฌ. +- **Dev Hunt** (GitHub ๋กœ๊ทธ์ธ ํˆฌํ‘œ, OSS ์ „ํ™˜์œจ ์šฐ์ˆ˜), **Uneed**, **Peerlist**, **Microlaunch**. + +**ํ•์น˜ ๋ฉ”์ผ(๊ณตํ†ต)**: +``` +Subject: New free tool โ€” media browser that auto-downloads HLS/DASH streams + +Hi, I built Paca, a free Windows media browser that sniffs HLS/DASH/MP4 as a +page plays and saves lossless MP4 with the session's cookies intact (plus a +QR-paired Android app for local Wi-Fi streaming). No signup, no caps. + +Would love to have it considered for your newsletter/directory. +https://mediabrowser.chanpaca.net/en/ +``` + +--- + +## 6. ๋‹จํŽธ ์˜์ƒ (TikTok/Shorts/Reels) +- 1๊ฐœ ๋กฑํผ โ†’ 15~20 ํด๋ฆฝ์œผ๋กœ ์žฌํŽธ์ง‘. ์ž๋ง‰ ํ•„์ˆ˜(๋ฌด์Œ ์žฌ์ƒ). +- ํฌ๋งท: 9:16(ํ‹ฑํ†ก/๋ฆด์Šค), 1:1(๋งํฌ๋“œ์ธ/IG), 16:9(์‡ผ์ธ ). +- ํ›„ํ‚น: "๊ฐœ๋ฐœ์ž๋„๊ตฌ ์—ด์ง€ ๋งˆ์„ธ์š”" 30์ดˆ ์‹œ์—ฐ โ†’ `๋ฌด๋ฃŒ๋กœ ๋ฐ›๊ธฐ`. diff --git a/docs/promo/korea.md b/docs/promo/korea.md new file mode 100644 index 0000000..99c4643 --- /dev/null +++ b/docs/promo/korea.md @@ -0,0 +1,143 @@ +# ํ•œ๊ตญ ์ฑ„๋„ ํ™๋ณด ๊ฒŒ์‹œ๋ฌธ (copy-paste) + +> ๋ชจ๋“  ๊ธ€์— **"์ œ๊ฐ€ ๋งŒ๋“  ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค"** ๋ฌธ๊ตฌ๋ฅผ ๋ฐ˜๋“œ์‹œ ํฌํ•จํ•œ๋‹ค(ํ‘œ์‹œ๊ด‘๊ณ ๋ฒ•). ์ €์ž‘๊ถŒ ์šฐํšŒ ํ”„๋ ˆ์ด๋ฐ ๊ธˆ์ง€. + +--- + +## 1. ํด๋ฆฌ์•™ โ€” ํŒ๊ณผ๊ฐ•์ขŒ / ์‚ฌ์šฉ๊ธฐ (๊ฐ€์žฅ ํšจ๊ณผ์ ) +> ์š”๊ฑด: ๊ฐ€์ž… 50์ผ+, ๋กœ๊ทธ์ธ 30ํšŒ+, ๊ฒŒ์‹œ๋ฌผ 1๊ฐœ+, ๋Œ“๊ธ€ 10๊ฐœ+. ์š”๊ฑด ๋ฏธ๋‹ฌ ์‹œ **์ง์ ‘ํ™๋ณด ๊ฒŒ์‹œํŒ**(์œ ๋ฃŒ) ์‚ฌ์šฉ. + +**์ œ๋ชฉ**: `์ŠคํŠธ๋ฆฌ๋ฐ ์˜์ƒ( m3u8 ) ์ €์žฅํ•  ๋•Œ ์ฃผ์†Œ ๋ณต์‚ฌ ์•ˆ ํ•˜๋Š” ๋ฐฉ๋ฒ• ์ •๋ฆฌ` + +**๋ณธ๋ฌธ**: +``` +์ŠคํŠธ๋ฆฌ๋ฐ ์˜์ƒ ์ €์žฅํ•  ๋•Œ๋งˆ๋‹ค ๊ฐœ๋ฐœ์ž๋„๊ตฌ๋กœ m3u8 ์ฃผ์†Œ ์ฐพ์•„์„œ ๋ถ™์—ฌ๋„ฃ๋Š” ๊ฒŒ ๋ฒˆ๊ฑฐ๋กœ์›Œ์„œ +์ •๋ฆฌํ•ด๋ดค์Šต๋‹ˆ๋‹ค. (์ œ๊ฐ€ ๋งŒ๋“  ํ”„๋กœ๊ทธ๋žจ์ด๋ผ ํ™๋ณด ํฌํ•จ๋œ ์  ๋จผ์ € ๋ฐํž™๋‹ˆ๋‹ค.) + +ํ•ต์‹ฌ์€ "์žฌ์ƒํ•˜๋Š” ์ˆœ๊ฐ„ ๊ฐ์ง€" ์ž…๋‹ˆ๋‹ค. +- ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋‚ด์žฅํ•ด์„œ ์˜์ƒ ์žฌ์ƒ ์‹œ HLS(.m3u8)/DASH(.mpd)/MP4 ์š”์ฒญ์„ ๊ฐ€๋กœ์ฑ” +- ๊ทธ ํƒญ์˜ ๋กœ๊ทธ์ธ ์ฟ ํ‚ค/Referer๋ฅผ ๊ทธ๋Œ€๋กœ ๋ฌผ๋ ค๋ฐ›์Œ โ†’ ํšŒ์›์ œ ์˜์ƒ๋„ 403 ์—†์ด ์ €์žฅ +- ์„ธ๊ทธ๋จผํŠธ๋ฅผ ๋ณ‘๋ ฌ๋กœ ๋ฐ›๊ณ  ๋Š๊ธฐ๋ฉด ์ด์–ด๋ฐ›๊ธฐ, ffmpeg๋กœ ๋ฌด์†์‹ค MP4 ๋ฆฌ๋จน์‹ฑ + +๊ธฐ์กด ๋ฐฉ์‹๊ณผ ๋น„๊ต: +- ๊ฐœ๋ฐœ์ž๋„๊ตฌ ์ˆ˜๋™ ์ถ”์ถœ: ๋งค๋ฒˆ ์ฃผ์†Œ ์ฐพ๊ธฐ + ์„ธ์…˜ ์•ˆ ๋งž์œผ๋ฉด 403 +- ํฌ๋กฌ ํ™•์žฅ: ๋Œ€์šฉ๋Ÿ‰์—์„œ ํƒญ ๋ฉˆ์ถค, ์ถ”์ ๊ธฐ ์œ„ํ—˜ +- ์œ ๋ฃŒ ํˆด: ๊ฒฐ์ œ/์ผ์ผ ์ œํ•œ + +๋ฌด๋ฃŒ ๋ฐฐํฌ ์ค‘์ด๊ณ  Windows ์„ค์น˜์ž ํ•˜๋‚˜๋ฉด ๋๋‚ฉ๋‹ˆ๋‹ค. (Python/ffmpeg ๋ณ„๋„ ์„ค์น˜ ๋ถˆํ•„์š”) +๊ด€์‹ฌ ์žˆ์œผ์‹œ๋ฉด ์—ฌ๊ธฐ์„œ ๋ฐ›์•„๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค: +https://mediabrowser.chanpaca.net/?utm_source=clien&utm_medium=forum&utm_campaign=launch2026 + +๋ฒ„๊ทธ๋‚˜ ๊ฐœ์„ ์  ๋Œ“๊ธ€๋กœ ์ฃผ์‹œ๋ฉด ๋ฐ˜์˜ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. +``` + +> ๋Œ“๊ธ€๋กœ ๋น„ํŒ/์งˆ๋ฌธ์ด ์˜ค๋ฉด **์‚ญ์ œยท๋ฐ˜๋ฐ• ์—†์ด** ์‹ค์ œ ์ˆ˜์ •์œผ๋กœ ์‘๋Œ€. ํด๋ฆฌ์•™์€ ์ด ํƒœ๋„๋ฅผ ๊ฐ€์žฅ ๋†’๊ฒŒ ํ‰๊ฐ€ํ•œ๋‹ค. + +--- + +## 2. ํด๋ฆฌ์•™ โ€” ์ง์ ‘ํ™๋ณด ๊ฒŒ์‹œํŒ (์œ ๋ฃŒ, ๊ธฐ์—…ํšŒ์›) +> 7์ผ โ‚ฉ44,000 / 30์ผ โ‚ฉ99,000. ํšŒ์›๊ธฐ๋งŒํ–‰์œ„(์ผ๋ฐ˜ ๊ฒŒ์‹œํŒ์— ํšŒ์›์ธ ์ฒ™ ํ™๋ณด)๋Š” ์ฆ‰์‹œ ์ œ์žฌ. + +**์ œ๋ชฉ**: `IDM ๋ฌด๋ฃŒ ๋Œ€์•ˆ โ€” ๋ธŒ๋ผ์šฐ์ € ๋‚ด์žฅํ˜• ๋ฏธ๋””์–ด ๋‹ค์šด๋กœ๋” Paca (๊ฐœ๋ฐœ์ž ๋ณธ์ธ)` + +**๋ณธ๋ฌธ**: +``` +์•ˆ๋…•ํ•˜์„ธ์š”, ๋ฌด๋ฃŒ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ € "Paca"๋ฅผ ๋งŒ๋“  ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค. +์˜์ƒ ์žฌ์ƒ ์‹œ ์ŠคํŠธ๋ฆผ์„ ์ž๋™ ๊ฐ์ง€ํ•ด ๋กœ๊ทธ์ธ ์„ธ์…˜ ๊ทธ๋Œ€๋กœ ์ €์žฅํ•˜๋Š” ๋ฐ์Šคํฌํ†ฑ ์•ฑ์ž…๋‹ˆ๋‹ค. + +- 100% ๋ฌด๋ฃŒ (์ผ์ผ ์ œํ•œ/ํ™”์งˆ ์ œํ•œ/๊ตฌ๋… ์—†์Œ) +- ๋‚ด์žฅ Chromium ๋ธŒ๋ผ์šฐ์ € โ†’ ๋กœ๊ทธ์ธ ์„ธ์…˜ยทReferer ์ž๋™ ์Šน๊ณ„ +- HLS m3u8 / DASH ์ž๋™ ๊ฐ์ง€, AES-128 ๋ณตํ˜ธํ™”, 16์Šค๋ ˆ๋“œ ๋ณ‘๋ ฌ ์ด์–ด๋ฐ›๊ธฐ +- ํ™ˆ Wi-Fi๋กœ ํœด๋Œ€ํฐ์—์„œ ์ด์–ด๋ณด๊ธฐ (QR ํŽ˜์–ด๋ง) + +https://mediabrowser.chanpaca.net/?utm_source=clien_hongbo&utm_medium=forum&utm_campaign=launch2026 +``` + +--- + +## 3. ๋ฝ๋ฟŒ โ€” ์•ฑ์ •๋ณด / ๊ฐœ๋ฐœ์žํฌ๋Ÿผ +> ์ž์œ ๊ฒŒ์‹œํŒ ๊ด‘๊ณ ๊ธ€์€ ๋ฌดํ†ต๋ณด ์‚ญ์ œ. `์•ฑ์ •๋ณด(id=ppomapp)`ยท`๊ฐœ๋ฐœ์žํฌ๋Ÿผ(id=developer)` ๋งŒ ํ—ˆ์šฉ. + +**์ œ๋ชฉ**: `[์ž์ž‘] ๋ฌด๋ฃŒ ์˜์ƒ ๋‹ค์šด๋กœ๋” Paca โ€” ๊ฐ€์„ฑ๋น„๋กœ ์“ฐ์‹ค ๋ถ„` + +**๋ณธ๋ฌธ**: +``` +์ œ๊ฐ€ ๋งŒ๋“  ๋ฌด๋ฃŒ ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค. ์œ ๋ฃŒ ํˆด ๊ฒฐ์ œ ์•„๊น๊ณ  ํฌ๋ž™์€ ์ฐ์ฐํ•œ ๋ถ„๋“ค๊ป˜. +IDM์ฒ˜๋Ÿผ ๋ถ„ํ•  ๋‹ค์šด๋กœ๋“œ ํ•˜๋ฉด์„œ m3u8 ์ŠคํŠธ๋ฆฌ๋ฐ๋„ ์ž๋™์œผ๋กœ ์žก์Šต๋‹ˆ๋‹ค. +ํ‰์ƒ ๋ฌด๋ฃŒ์ด๊ณ  ๊ด‘๊ณ  ์™ธ ๊ฒฐ์ œ ์œ ๋„๋Š” ์—†์Šต๋‹ˆ๋‹ค. +https://mediabrowser.chanpaca.net/?utm_source=ppomppu&utm_medium=forum&utm_campaign=launch2026 +ํ”ผ๋“œ๋ฐฑ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. +``` + +--- + +## 4. ๋””์Šค์ฝฐ์ด์—‡ (disquiet.io) โ€” ๋ฉ”์ด์ปค ์ปค๋ฎค๋‹ˆํ‹ฐ +**์ œ๋ชฉ**: `[์ถœ์‹œ] ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋‚ด์žฅํ•œ ๋ฏธ๋””์–ด ๋‹ค์šด๋กœ๋” Paca` + +**๋ณธ๋ฌธ**: +``` +๋งŒ๋“  ์ด์œ : ์˜์ƒ ์ €์žฅํ•  ๋•Œ๋งˆ๋‹ค m3u8 ์ฃผ์†Œ ์ฐพ๊ณ  ๋ถ™์—ฌ๋„ฃ๋Š” ๊ฒŒ ๋„ˆ๋ฌด ๋ฒˆ๊ฑฐ๋กœ์› ์Šต๋‹ˆ๋‹ค. +๊ทธ๋ž˜์„œ ๋ธŒ๋ผ์šฐ์ € ์ž์ฒด๋ฅผ ์•ฑ์— ์‹ฌ์—ˆ์Šต๋‹ˆ๋‹ค. + +- ์žฌ์ƒ ์ฆ‰์‹œ HLS/DASH/MP4 ์ž๋™ ๊ฐ์ง€ +- ํƒญ์˜ ๋กœ๊ทธ์ธ ์„ธ์…˜ ์ฟ ํ‚ค/Referer ์Šน๊ณ„ (ํšŒ์›์ œ ์˜์ƒ ๋Œ€์‘) +- 16์Šค๋ ˆ๋“œ ๋ณ‘๋ ฌ ์ด์–ด๋ฐ›๊ธฐ + ffmpeg ๋ฌด์†์‹ค ๋ฆฌ๋จน์‹ฑ +- PC ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™ˆ Wi-Fi๋กœ ํฐ์—์„œ ์ด์–ด๋ณด๊ธฐ + +๊ธฐ์ˆ  ์Šคํƒ: .NET(WPF) + WebView2 + ์ž์ฒด HLS/DASH ํŒŒ์„œ + ffmpeg +๊ถ๊ธˆํ•œ ์ /ํ”ผ๋“œ๋ฐฑ ์ฃผ์‹œ๋ฉด ๋‹ต๋ณ€๋“œ๋ฆฝ๋‹ˆ๋‹ค. +https://mediabrowser.chanpaca.net/?utm_source=disquiet&utm_medium=community&utm_campaign=launch2026 +``` + +--- + +## 5. ๋„ค์ด๋ฒ„ ๋ธ”๋กœ๊ทธ (C-Rank/D.I.A., ๊ฒ€์ƒ‰ ์œ ์ž… ๊ธฐ๋ฐ˜) +> ๊ณต์‹ ๋ธ”๋กœ๊ทธ๋ฅผ **์ฃผ์ œ ์ง‘์ค‘ํ˜•**์œผ๋กœ ์šด์˜(์˜์ƒ/๋‹ค์šด๋กœ๋“œ/IT ์œ ํ‹ธ ํ•œ ์ฃผ์ œ). ๋ณธ๋ฌธ ๋งํฌ๋Š” UTM ์—†์ด. +> ๊ธ€ 1๊ฐœ = ํ‚ค์›Œ๋“œ 1๊ฐœ. ์›๋ณธ ์Šคํฌ๋ฆฐ์ƒท ํ•„์ˆ˜. + +**๋ฐœํ–‰ํ•  ๊ธ€ (์ œ๋ชฉ = ๊ฒ€์ƒ‰์–ด ๊ทธ๋Œ€๋กœ)**: +| ์ œ๋ชฉ | ํƒ€๊นƒ ํ‚ค์›Œ๋“œ | +|---|---| +| `์œ ํŠœ๋ธŒ ์˜์ƒ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ• (์ฃผ์†Œ ๋ณต์‚ฌ ์—†์ด)` | ์œ ํŠœ๋ธŒ ์˜์ƒ ์ €์žฅ | +| `m3u8 ๋‹ค์šด๋กœ๋“œ ๋ฐฉ๋ฒ• โ€” ts ํŒŒ์ผ ํ•ฉ์น˜๊ธฐ ์—†์ด MP4๋กœ` | m3u8 ๋‹ค์šด๋กœ๋“œ, m3u8 mp4 ๋ณ€ํ™˜ | +| `IDM ๋ฌด๋ฃŒ ๋Œ€์•ˆ 2026 (์œ ๋ฃŒ ์—†์ด ์ŠคํŠธ๋ฆฌ๋ฐ ์ €์žฅ)` | IDM ๋ฌด๋ฃŒ ๋Œ€์•ˆ | +| `ํšŒ์›์ œ/๋กœ๊ทธ์ธ ์˜์ƒ ๋‹ค์šด๋กœ๋“œ 403 ์•ˆ ๋œจ๊ฒŒ ํ•˜๋Š” ๋ฒ•` | ๋กœ๊ทธ์ธ ์˜์ƒ ๋‹ค์šด๋กœ๋“œ | +| `์•ˆ๋“œ๋กœ์ด๋“œ์—์„œ PC ์˜์ƒ ์ด์–ด๋ณด๊ธฐ (ํ™ˆ ์™€์ดํŒŒ์ด)` | ํฐ์œผ๋กœ ์˜์ƒ ์˜ฎ๊ธฐ๊ธฐ | + +**๊ตฌ์„ฑ**: โ‘ ๋‘๊ด„์‹ ์ง๋‹ต 1๋ฌธ๋‹จ โ†’ โ‘ก๋‹จ๊ณ„๋ณ„ ์Šคํฌ๋ฆฐ์ƒท โ†’ โ‘ขFAQ 3๊ฐœ โ†’ โ‘ฃ์‚ฌ์ดํŠธ ๋งํฌ. +**์—ฐ๊ณ„**: ์นดํŽ˜ยท๋ธ”๋กœ๊ทธยท์œ ํŠœ๋ธŒ ๋ฆฌ๋ทฐ๊ฐ€ ์„œ๋กœ ๋งํฌํ•˜๋ฉด C-Rank Chain ์‹ ํ˜ธ๊ฐ€ ๊ฐ•ํ™”๋œ๋‹ค. + +--- + +## 6. ์˜ค๋Š˜์˜์œ ๋จธ โ€” ์ปดํ“จํ„ฐ/IT +> ๋ฒ ์ŠคํŠธ/๋ฒ ์˜ค๋ฒ ๋Š” ๋น„๊ณต๊ฐ>์ถ”์ฒœ์ด๋ฉด ์ž๋™ ํƒˆ๋ฝ. ์ˆœ์ˆ˜ ์œ ์šฉ ๊ธ€๋กœ ์Šน๋ถ€. +**์ œ๋ชฉ**: `์˜์ƒ ์ €์žฅํ•  ๋•Œ ์ฃผ์†Œ ๋ณต์‚ฌ ์•ˆ ํ•˜๋Š” ๋ฒ• (์ž์ž‘ ํ”„๋กœ๊ทธ๋žจ)` + +--- + +## 7. ๋””์‹œ์ธ์‚ฌ์ด๋“œ โ€” ์ฃผ์ œ ๋งˆ์ด๋„ˆ ๊ฐค๋Ÿฌ๋ฆฌ(IT/PC) +> `[์œ ํ‹ธ]` ํ˜•์‹์œผ๋กœ **์œ ์šฉํ•œ ์ง€์‹๊ธ€**๋กœ ์˜ฌ๋ฆฌ๊ณ , ํ”„๋กœ๊ทธ๋žจ์€ ์˜ต์…˜ ์ค‘ ํ•˜๋‚˜๋กœ. ์ €์ž‘๊ถŒ ํ‘œํ˜„ ์ ˆ๋Œ€ ๊ธˆ์ง€. +**์ œ๋ชฉ**: `[์œ ํ‹ธ] m3u8 ์ €์žฅํ•˜๋Š” GUI ํˆด ์ •๋ฆฌ (์ž์ž‘)` + +--- + +## 8. ์œ ํŠœ๋ฒ„ ํ•์น˜ (์ค‘์†Œ ํ…Œํฌ/์œ ํ‹ธ ์ฑ„๋„ 1๋งŒ~5๋งŒ ์ถ”์ฒœ) +> ์ž‡์„ญ๊ธ‰์€ ๋ฌด๋ฆฌ. "๋ฌด๋ฃŒ ํ”„๋กœ๊ทธ๋žจ/์œ ํ‹ธ ์†Œ๊ฐœ"ยท"์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ๋ฆฌ๋ทฐ" ์ฑ„๋„์ด ํšจ์œจ์ . ์œ ๋ฃŒ/์ œ๊ณต ์‹œ `#ํ˜‘์ฐฌ` ํ‘œ๊ธฐ ํ•„์ˆ˜. + +**๋ฉ”์ผ ์ œ๋ชฉ**: `[๋ฌด๋ฃŒ ์œ ํ‹ธ] IDM ๋Œ€์•ˆ ๋ฏธ๋””์–ด ๋‹ค์šด๋กœ๋” โ€” ๋ฆฌ๋ทฐ์šฉ ๋ฌด๋ฃŒ ๋ผ์ด์„ ์Šค ์ œ๊ณต` + +**๋ฉ”์ผ ๋ณธ๋ฌธ**: +``` +์•ˆ๋…•ํ•˜์„ธ์š”, ๋ฌด๋ฃŒ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ € "Paca" ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค. +์‹œ์ฒญ์ž๋ถ„๋“ค์ด ์œ ์šฉํ•˜๊ฒŒ ์“ฐ์‹ค ๋งŒํ•œ ๋ฌด๋ฃŒ ํ”„๋กœ๊ทธ๋žจ์ด๋ผ ์†Œ๊ฐœ๋“œ๋ฆฝ๋‹ˆ๋‹ค. + +ํฌ์ธํŠธ: +- IDM/4K Video Downloader ์œ ๋ฃŒ ๋Œ€์•ˆ (100% ๋ฌด๋ฃŒ) +- ๋ธŒ๋ผ์šฐ์ € ๋‚ด์žฅ โ†’ ์žฌ์ƒ ์ฆ‰์‹œ m3u8/DASH ์ž๋™ ๊ฐ์ง€, ๋กœ๊ทธ์ธ ์„ธ์…˜ ์Šน๊ณ„ +- Windows + Android ์ปดํŒจ๋‹ˆ์–ธ(ํ™ˆ Wi-Fi ์ด์–ด๋ณด๊ธฐ) + +๋ฐ๋ชจ ์˜์ƒ/์„ค์น˜ ํŒŒ์ผ๊ณผ ํ•จ๊ป˜, ํ•„์š”ํ•˜์‹œ๋ฉด ์ „์šฉ ์•ˆ๋‚ด๋„ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. +(ํ˜‘์ฐฌ ์—ฌ๋ถ€์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ #ํ˜‘์ฐฌ ๋“ฑ ๊ณต์ •์œ„ ๊ทœ์ •์— ๋งž์ถฐ ํ‘œ๊ธฐํ•ด ์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.) + +https://mediabrowser.chanpaca.net/en/?utm_source=youtube&utm_medium=review&utm_campaign=launch2026 +``` diff --git a/site/e9f2c7a4b1d8460f9c3e2a7b5d1f08c4.txt b/site/e9f2c7a4b1d8460f9c3e2a7b5d1f08c4.txt new file mode 100644 index 0000000..4519f9e --- /dev/null +++ b/site/e9f2c7a4b1d8460f9c3e2a7b5d1f08c4.txt @@ -0,0 +1 @@ +e9f2c7a4b1d8460f9c3e2a7b5d1f08c4 diff --git a/site/en/index.html b/site/en/index.html new file mode 100644 index 0000000..88a4f13 --- /dev/null +++ b/site/en/index.html @@ -0,0 +1,352 @@ + + + + + +Paca - Free Video Downloader & Media Browser (HLS m3u8 Auto-Detection) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ Media Stream Engine +

Stop copying URLs.
Just press play.

+ +
+
+

Paca is a media browser that detects HLS, DASH and MP4 streams the instant they start playing and saves them with your login session intact, then continues on your phone over local Wi-Fi.

+ + +
+
+
+
+ +
+ + +
+
+
+

What is Paca?

+

Paca is a 100% free Windows media browser that downloads streaming video. It detects HLS (.m3u8), MPEG-DASH (.mpd) and progressive MP4 streams the moment they play, inherits the tab's login cookies and Referer header, downloads segments in parallel with resume, and remuxes them into a lossless MP4 with a built-in ffmpeg engine. It is a free alternative to Internet Download Manager and 4K Video Downloader.

+
+
+
+ + +
+
+
+

Browse, detect, save

+

No extensions, no developer tools. Watch a video as usual and the background engine handles the rest.

+
+
+
+
+
+

1. Play a video as usual

+

Open any site in the built-in browser and play the video. No token extraction and no URL copying required.

+
+
+
+
+
+

2. Session inherit & auto-detect

+

The moment you press play, Paca intercepts the HLS, DASH or MP4 stream and carries over the tab's auth cookies and Referer header.

+
+
+
+
+
+

3. Parallel resume & remux

+

Segments download in parallel and resume from the exact chunk after a drop. ffmpeg then joins them into a lossless MP4.

+
+
+
+
+
+ + +
+
+
+

Paca vs IDM vs 4K Video Downloader

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Feature comparison of Paca, Internet Download Manager (IDM), 4K Video Downloader and Chrome extensions (verified September 2026)
CapabilityPacaIDM4K Video DownloaderChrome extension
PriceFree for life$24.95 paid30/day cap (paid $15-25)Free (upsell prompts)
Built-in browserYes (WebView2)No (extension required)No (paste URL)Runs in the browser tab
Login session passthroughAutomaticManual cookie exportManual cookie importFrequent 403 conflicts
HLS m3u8 / DASHAuto-detect & parallel mergeSupported, joins often failNot supportedAborts mid-download
AES-128 decryptionAutomatic key fetch & decryptLimitedNot supportedNot supported
4K / 8K qualityUnlimited original qualitySupported1080p cap on free tierNo high-res download
Local mobile streamingQR-paired Wi-Fi P2PNoNoNo
+
+
+
+ + +
+
+
+

Frequently asked questions

+

The exact questions search engines and AI answer engines quote first.

+
+
+
+

Is Paca really 100% free?

+

Yes. Paca is free for life with no download cap, no resolution cap, and no subscription. It is funded only by non-intrusive official Google ads, and there is no Pro tier and no hidden payment.

+
+
+

Can Paca replace Internet Download Manager (IDM)?

+

Yes. Paca keeps IDM's multi-threaded accelerated download and fixes its two biggest limits, external extension conflicts and m3u8 segment joins, with a built-in Chromium WebView2 browser and a lossless ffmpeg remux engine.

+
+
+

Can it download member-only or paid-course videos?

+

Yes, for content you are authorized to view. Log in inside Paca's built-in browser and the session cookie, Referer and auth token pass straight to the download engine, so protected streams save at original quality without 403 errors.

+
+
+

Does Paca work on macOS and Linux?

+

Windows 10/11 (x64 and ARM64) is the stable release. macOS (Apple Silicon and Intel) and Linux (Ubuntu, Fedora, Arch) ship as preview builds, and an Android companion app streams your PC library over local Wi-Fi.

+
+
+
+
+ + +
+
+
+

Make the video you are watching yours.

+

Install in a minute and start browsing. Paca manages everything else for you.

+ +
+
+
+ +
+ + + + + + diff --git a/site/feed.xml b/site/feed.xml new file mode 100644 index 0000000..258a0e5 --- /dev/null +++ b/site/feed.xml @@ -0,0 +1,98 @@ + + + + Paca โ€” ๋ฌด๋ฃŒ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ € & ๋™์˜์ƒ ๋‹ค์šด๋กœ๋” + https://mediabrowser.chanpaca.net/ + ์žฌ์ƒํ•˜๋Š” ์ˆœ๊ฐ„ HLS(.m3u8)ยทDASH(.mpd)ยทMP4 ์ŠคํŠธ๋ฆผ์„ ์ž๋™ ๊ฐ์ง€ํ•ด ๋กœ๊ทธ์ธ ์„ธ์…˜ ๊ทธ๋Œ€๋กœ ๋ฌด์†์‹ค ์ €์žฅํ•˜๋Š” 100% ๋ฌด๋ฃŒ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ €. Naver Search Advisor ๋ฐ RSS ๋ฆฌ๋”์šฉ ํ”ผ๋“œ์ž…๋‹ˆ๋‹ค. + ko + Sun, 14 Sep 2026 00:00:00 +0900 + + + https://mediabrowser.chanpaca.net/assets/paca-logo-512.png + Paca + https://mediabrowser.chanpaca.net/ + + + + Paca โ€” ๋ฌด๋ฃŒ ๋™์˜์ƒ ๋‹ค์šด๋กœ๋” & ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ € (HLS m3u8 ์ž๋™ ๊ฐ์ง€) + https://mediabrowser.chanpaca.net/ + https://mediabrowser.chanpaca.net/ + ์ฃผ์†Œ ๋ณต์‚ฌ ์—†์ด ์žฌ์ƒํ•˜๋Š” ์ˆœ๊ฐ„ ์ŠคํŠธ๋ฆผ์„ ๊ฐ์ง€ํ•ด ์ €์žฅํ•˜๋Š” 100% ๋ฌด๋ฃŒ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ €. ๋ธŒ๋ผ์šฐ์ € ์„ธ์…˜ ์Šน๊ณ„, AES-128 ์ž๋™ ๋ณตํ˜ธํ™”, 16์Šค๋ ˆ๋“œ ๋ณ‘๋ ฌ ์ด์–ด๋ฐ›๊ธฐ, ํ™ˆ Wi-Fi ๋ชจ๋ฐ”์ผ ๋กœ์ปฌ ์ŠคํŠธ๋ฆฌ๋ฐ ์ง€์›. + Sun, 14 Sep 2026 00:00:00 +0900 + + + + m3u8 ๋‹ค์šด๋กœ๋“œ ๋ฐ ๊ณ ํ™”์งˆ MP4 ๋ณ€ํ™˜ ๋ฐฉ๋ฒ• (HLS ์ŠคํŠธ๋ฆฌ๋ฐ ์™„๋ฒฝ ๊ฐ€์ด๋“œ) + https://mediabrowser.chanpaca.net/how-to-download-m3u8.html + https://mediabrowser.chanpaca.net/how-to-download-m3u8.html + ์›นํŽ˜์ด์ง€์—์„œ ์žฌ์ƒ ์ค‘์ธ HLS m3u8 ๋™์˜์ƒ ์ŠคํŠธ๋ฆผ์„ ์ฃผ์†Œ ์ถ”์ถœ ์—†์ด ์›๋ณธ ๊ทธ๋Œ€๋กœ MP4๋กœ ๋ฌด์†์‹ค ๋‹ค์šด๋กœ๋“œํ•˜๋Š” ๋‹จ๊ณ„๋ณ„ ๋ฐฉ๋ฒ•. AES-128 ์ž๋™ ๋ณตํ˜ธํ™”์™€ ์„ธ๊ทธ๋จผํŠธ ๋ณ‘๋ ฌ ์ด์–ด๋ฐ›๊ธฐ ์™„๋ฒฝ ์ง€์›. + Sun, 14 Sep 2026 00:00:00 +0900 + + + + MPD(DASH) ์ŠคํŠธ๋ฆฌ๋ฐ ๋‹ค์šด๋กœ๋“œ ๋ฐ MP4 ๋ณ€ํ™˜ ๋ฐฉ๋ฒ• (MPEG-DASH ์™„๋ฒฝ ๊ฐ€์ด๋“œ) + https://mediabrowser.chanpaca.net/how-to-download-dash-mpd.html + https://mediabrowser.chanpaca.net/how-to-download-dash-mpd.html + ์žฌ์ƒ ์ค‘์ธ MPEG-DASH(.mpd) ์ŠคํŠธ๋ฆผ์„ SegmentTemplate ๊ทœ์น™ ํ•ด์„ ์—†์ด ์›๋ณธ ํ™”์งˆ MP4๋กœ ์ €์žฅํ•˜๋Š” ๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ. ์„ธ๊ทธ๋จผํŠธ ๋ณ‘๋ ฌ ์ด์–ด๋ฐ›๊ธฐ์™€ ffmpeg ๋ฌด์†์‹ค ๋ฆฌ๋จน์‹ฑ ์ง€์›. + Sun, 14 Sep 2026 00:00:00 +0900 + + + + AES-128 ์•”ํ˜ธํ™” HLS(m3u8) ์ŠคํŠธ๋ฆผ ๋ณตํ˜ธํ™” ๋‹ค์šด๋กœ๋“œ ๋ฐฉ๋ฒ• + https://mediabrowser.chanpaca.net/how-to-download-hls-aes-128.html + https://mediabrowser.chanpaca.net/how-to-download-hls-aes-128.html + EXT-X-KEY๋กœ AES-128 ์•”ํ˜ธํ™”๋œ HLS ์„ธ๊ทธ๋จผํŠธ๋ฅผ ํ‚ค ์ถ”์ถœ ์—†์ด ์ž๋™ ๋ณตํ˜ธํ™”ํ•ด ์žฌ์ƒ ๊ฐ€๋Šฅํ•œ MP4๋กœ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•. ๋ธŒ๋ผ์šฐ์ € ๋กœ๊ทธ์ธ ์„ธ์…˜ ๊ทธ๋Œ€๋กœ ๋ฌด์†์‹ค ๋ฆฌ๋จน์‹ฑ. + Sun, 14 Sep 2026 00:00:00 +0900 + + + + + + 2026 ์ตœ๊ณ ์˜ ๋ฌด๋ฃŒ ๋น„๋””์˜ค ๋‹ค์šด๋กœ๋”: IDM ๋Œ€์ฒด ํ”„๋กœ๊ทธ๋žจ Paca ์™„๋ฒฝ ๋น„๊ต + https://mediabrowser.chanpaca.net/vs-idm-alternative.html + https://mediabrowser.chanpaca.net/vs-idm-alternative.html + Internet Download Manager(IDM) ๋ฐ 4K Video Downloader ๋Œ€๋น„ Paca์˜ ํŠน์žฅ์  8๋Œ€ ํ•ญ๋ชฉ ์ƒ์„ธ ๋น„๊ต. 100% ๋ฌด๋ฃŒ, ๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ € ๋กœ๊ทธ์ธ ์„ธ์…˜ ์Šน๊ณ„, HLS m3u8 ์ž๋™ ๊ฐ์ง€, AES-128 ๋ณตํ˜ธํ™”. + Sun, 14 Sep 2026 00:00:00 +0900 + + + + 2026 ๋ฌด๋ฃŒ GUI ๋™์˜์ƒ ๋‹ค์šด๋กœ๋”: yt-dlp ๋Œ€์ฒด ํ”„๋กœ๊ทธ๋žจ Paca ๋น„๊ต + https://mediabrowser.chanpaca.net/vs-yt-dlp.html + https://mediabrowser.chanpaca.net/vs-yt-dlp.html + yt-dlp ๋Œ€๋น„ Paca์˜ ๊ฐ•์  ์ƒ์„ธ ๋น„๊ต. ๋ช…๋ น์–ดยทPythonยทffmpeg ์„ค์น˜ ์—†์ด ๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์žฌ์ƒ ์ฆ‰์‹œ HLS m3u8ยทDASH ์ŠคํŠธ๋ฆผ์„ ์ž๋™ ๊ฐ์ง€ํ•ด ๋ฌด์†์‹ค MP4๋กœ ์ €์žฅํ•˜๋Š” 100% ๋ฌด๋ฃŒ GUI ๋‹ค์šด๋กœ๋”. + Sun, 14 Sep 2026 00:00:00 +0900 + + + + 2026 ๋ฌด๋ฃŒ ๋™์˜์ƒ ๋‹ค์šด๋กœ๋”: JDownloader ๋Œ€์ฒด ํ”„๋กœ๊ทธ๋žจ Paca ๋น„๊ต + https://mediabrowser.chanpaca.net/vs-jdownloader.html + https://mediabrowser.chanpaca.net/vs-jdownloader.html + JDownloader ๋Œ€๋น„ Paca์˜ ๊ฐ•์  ์ƒ์„ธ ๋น„๊ต. Java ์„ค์น˜ยท๋งํฌ ๋ถ™์—ฌ๋„ฃ๊ธฐ ์—†์ด ๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์žฌ์ƒ ์ฆ‰์‹œ HLS m3u8ยทDASH ์ŠคํŠธ๋ฆผ์„ ์ž๋™ ๊ฐ์ง€ํ•ด ๋กœ๊ทธ์ธ ์„ธ์…˜ ๊ทธ๋Œ€๋กœ ๋ฌด์†์‹ค MP4๋กœ ์ €์žฅํ•˜๋Š” 100% ๋ฌด๋ฃŒ ๋‹ค์šด๋กœ๋”. + Sun, 14 Sep 2026 00:00:00 +0900 + + + + Paca ์‚ฌ์šฉ ์•ˆ๋‚ด โ€” ์„ค์น˜๋ถ€ํ„ฐ ์Šค๋งˆํŠธํฐ ์—ฐ๊ฒฐ๊นŒ์ง€ + https://mediabrowser.chanpaca.net/guide.html + https://mediabrowser.chanpaca.net/guide.html + Paca ์„ค์น˜์ž ๋‹ค์šด๋กœ๋“œ, ์˜์ƒ ์ €์žฅ ๋ฐฉ๋ฒ•, ํ™ˆ Wi-Fi ๋ชจ๋ฐ”์ผ ์ŠคํŠธ๋ฆฌ๋ฐ ์—ฐ๊ฒฐ, ๋‹จ์ถ•ํ‚ค์™€ ์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ์„ ๋‹ค๋ฃจ๋Š” ์ „์ฒด ์‚ฌ์šฉ ์•ˆ๋‚ด. + Sun, 14 Sep 2026 00:00:00 +0900 + + + + Paca ๋ฆด๋ฆฌ์Šค & ๋‹ค์šด๋กœ๋“œ (Windows / macOS / Linux / Android) + https://mediabrowser.chanpaca.net/releases.html + https://mediabrowser.chanpaca.net/releases.html + Paca์˜ ์ตœ์‹  ์•ˆ์ •ํŒ๊ณผ ํ”„๋ฆฌ๋ทฐ ๋นŒ๋“œ. Windows ์„ค์น˜์ž, macOSยทLinux ํ”„๋ฆฌ๋ทฐ, Android ์ปดํŒจ๋‹ˆ์–ธ APK์™€ ์ด์ „ ๋ฆด๋ฆฌ์Šค ์ „์ฒด ๋‚ด์—ญ ์ œ๊ณต. + Sun, 14 Sep 2026 00:00:00 +0900 + + + + Paca โ€” Free Media Browser & Video Downloader (HLS m3u8 auto-detection) + https://mediabrowser.chanpaca.net/en/ + https://mediabrowser.chanpaca.net/en/ + The 100% free media browser that detects HLS (.m3u8), DASH (.mpd) and MP4 streams the moment they play, inherits your login session, and saves lossless MP4 โ€” with local Wi-Fi mobile streaming. + Sun, 14 Sep 2026 00:00:00 +0900 + + + diff --git a/site/how-to-download-dash-mpd.html b/site/how-to-download-dash-mpd.html new file mode 100644 index 0000000..88f85cb --- /dev/null +++ b/site/how-to-download-dash-mpd.html @@ -0,0 +1,277 @@ + + + + + +MPD(DASH) ์ŠคํŠธ๋ฆฌ๋ฐ ๋‹ค์šด๋กœ๋“œ ๋ฐ MP4 ๋ณ€ํ™˜ ๋ฐฉ๋ฒ• (MPEG-DASH ์™„๋ฒฝ ๊ฐ€์ด๋“œ) - Paca + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ MPEG-DASH ๊ธฐ์ˆ  ๊ฐ€์ด๋“œ +

MPD(DASH) ์ŠคํŠธ๋ฆฌ๋ฐ ๋™์˜์ƒ ์›๋ณธ ํ™”์งˆ MP4 ๋ณ€ํ™˜ ๋ฐ ๋‹ค์šด๋กœ๋“œ ์™„๋ฒฝ ๊ฐ€์ด๋“œ

+

.mpd ๋งค๋‹ˆํŽ˜์ŠคํŠธ๋ฅผ ์ง์ ‘ ํŒŒ์‹ฑํ•˜๊ฑฐ๋‚˜ ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ•  ํ•„์š” ์—†์ด, ์žฌ์ƒํ•˜๋Š” ์ˆœ๊ฐ„ DASH ์ŠคํŠธ๋ฆผ์„ ๊ฐ์ง€ํ•ด ๋ฌด์†์‹ค MP4๋กœ ์ €์žฅํ•˜๋Š” ์‹ค์ „ ํŠœํ† ๋ฆฌ์–ผ.

+
+
+ +
+
+ + + +
+ +
+

DASH(.mpd) ๋™์˜์ƒ์€ ์™œ ๊ทธ๋ƒฅ ์ €์žฅ์ด ์•ˆ ๋ ๊นŒ์š”?

+

+ MPEG-DASH(Dynamic Adaptive Streaming over HTTP)๋Š” HLS์™€ ํ•จ๊ป˜ ๋„๋ฆฌ ์“ฐ์ด๋Š” ํ‘œ์ค€ ์ŠคํŠธ๋ฆฌ๋ฐ ๊ทœ๊ฒฉ์ž…๋‹ˆ๋‹ค. ์ŠคํŠธ๋ฆผ ๊ตฌ์กฐ๋ฅผ ๋‹ด์€ .mpd ๋งค๋‹ˆํŽ˜์ŠคํŠธ๋Š” XML ํ˜•์‹์ด๋ฉฐ, ์‹ค์ œ ์˜์ƒ์€ .m4s(๋˜๋Š” .mp4) ์„ธ๊ทธ๋จผํŠธ๋กœ ๋‚˜๋‰˜์–ด ์ „์†ก๋ฉ๋‹ˆ๋‹ค. ๋งค๋‹ˆํŽ˜์ŠคํŠธ์—๋Š” SegmentTemplate ๊ทœ์น™๊ณผ adaptation set(ํ™”์งˆยท์˜ค๋””์˜ค ๊ณ„์—ด)์ด ์ •์˜๋˜์–ด ์žˆ์–ด, ๊ทœ์น™์„ ํ•ด์„ํ•ด ์„ธ๊ทธ๋จผํŠธ ์ฃผ์†Œ๋ฅผ ๊ณ„์‚ฐํ•ด์•ผ๋งŒ ์‹ค์ œ ์˜์ƒ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +

+
    +
  • ์ฃผ์†Œ ๊ณ„์‚ฐ์ด ํ•„์š”: ์„ธ๊ทธ๋จผํŠธ URL์— ๋ฒˆํ˜ธ๊ฐ€ ๋“ค์–ด๊ฐ€ ์žˆ์–ด ๋งค๋‹ˆํŽ˜์ŠคํŠธ ๊ทœ์น™์„ ์ง์ ‘ ํ•ด์„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • +
  • ์˜์ƒยท์˜ค๋””์˜ค ๋ถ„๋ฆฌ: ๋‘ ํŠธ๋ž™์„ ๊ฐ๊ฐ ๋ฐ›์•„ ๋‹ค์‹œ ๊ฒฐํ•ฉํ•ด์•ผ ์žฌ์ƒ ๊ฐ€๋Šฅํ•œ ํŒŒ์ผ์ด ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค.
  • +
  • ์„ธ์…˜ยทํ† ํฐ ์ œํ•œ: ๋กœ๊ทธ์ธ ๋ฉค๋ฒ„์‹ญ ์ŠคํŠธ๋ฆผ์€ ์ฟ ํ‚ค์™€ Referer๊ฐ€ ์—†์œผ๋ฉด 403 Forbidden์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
  • +
+
+ + +
+

MPEG-DASH(.mpd) vs HLS(.m3u8) ๋ช…์„ธ ๋น„๊ต

+
+ + + + + + + + + + + + + + + + + +
MPEG-DASH(.mpd)์™€ HLS(.m3u8) ์ŠคํŠธ๋ฆฌ๋ฐ ๊ทœ๊ฒฉ ๋น„๊ต (2026-09 ๊ธฐ์ค€ ๊ฒ€์ฆ)
ํ•ญ๋ชฉMPEG-DASH (.mpd)HLS (.m3u8)
๋งค๋‹ˆํŽ˜์ŠคํŠธ ํ˜•์‹XMLํ…์ŠคํŠธ(m3u8)
์„ธ๊ทธ๋จผํŠธ ํ™•์žฅ์ž.m4s / .mp4.ts / .m4s
์„ธ๊ทธ๋จผํŠธ ์ฃผ์†Œ ๊ฒฐ์ •SegmentTemplate ๊ทœ์น™์œผ๋กœ ๊ณ„์‚ฐ๋ชฉ๋ก์— URL์„ ์ง์ ‘ ๋‚˜์—ด
ํ™”์งˆ ํ‘œํ˜„adaptation set / representationvariant playlist
์˜์ƒยท์˜ค๋””์˜ค ๋ถ„๋ฆฌํ•จ(๋ณ„๋„ adaptation set)์ฃผ๋กœ muxed
์•”ํ˜ธํ™”Common Encryption(cenc) / AESAES-128 (EXT-X-KEY)
+
+
+ + +
+
+ 1 +

Paca ๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋™์˜์ƒ ํŽ˜์ด์ง€ ์ ‘์†

+
+

+ Paca๋Š” Chromium WebView2 ๊ธฐ๋ฐ˜ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ €์ž…๋‹ˆ๋‹ค. ์ฃผ์†Œ์ฐฝ์— ์˜์ƒ์„ ๋ณด๋ ค๋Š” ํŽ˜์ด์ง€ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ํ‰์†Œ์ฒ˜๋Ÿผ ์ ‘์†ํ•˜์„ธ์š”. ๋กœ๊ทธ์ธ์ด ํ•„์š”ํ•œ ๊ฐ•์˜ยท๋ฉค๋ฒ„์‹ญ ์˜์ƒ์ด๋ผ๋ฉด ๋ธŒ๋ผ์šฐ์ € ์•ˆ์—์„œ ๋กœ๊ทธ์ธํ•ด ๋‘๋ฉด ๋ฉ๋‹ˆ๋‹ค. +

+
+ +
+
+ 2 +

์žฌ์ƒ ์ฆ‰์‹œ .mpd ๋งค๋‹ˆํŽ˜์ŠคํŠธ ์ž๋™ ๊ฐ์ง€

+
+

+ ์žฌ์ƒ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋Š” ์ˆœ๊ฐ„ ๋‚ด์žฅ ์Šค๋‹ˆํผ๊ฐ€ .mpd ๋งค๋‹ˆํŽ˜์ŠคํŠธ ์š”์ฒญ์„ ๊ฐ€๋กœ์ฑ„๊ณ , adaptation set(ํ™”์งˆยท์˜ค๋””์˜ค)๊ณผ SegmentTemplate ๊ทœ์น™์„ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค. ๋™์‹œ์— ํƒญ์˜ ๋กœ๊ทธ์ธ ์„ธ์…˜ ์ฟ ํ‚ค์™€ Referer ํ—ค๋”๋ฅผ ํ™•๋ณดํ•˜๋ฏ€๋กœ ์ ‘๊ทผ ์ œํ•œ ์ŠคํŠธ๋ฆผ๋„ ๊ฐ์ง€๋ฉ๋‹ˆ๋‹ค. +

+
+ +
+
+ 3 +

์„ธ๊ทธ๋จผํŠธ ๋ณ‘๋ ฌ ๋‹ค์šด๋กœ๋“œ์™€ ๋ฌด์†์‹ค MP4 ์กฐ๋ฆฝ

+
+

+ ๋‹ค์šด๋กœ๋“œ๋ฅผ ์‹œ์ž‘ํ•˜๋ฉด m4s ์„ธ๊ทธ๋จผํŠธ๋ฅผ ์ตœ๋Œ€ 16์Šค๋ ˆ๋“œ๋กœ ๋™์‹œ ์ˆ˜์‹ ํ•˜๊ณ , ๋Š๊ธฐ๋ฉด ๋ฐ›์€ ์ง€์ ๋ถ€ํ„ฐ ์ด์–ด๋ฐ›์Šต๋‹ˆ๋‹ค. ์˜์ƒ๊ณผ ์˜ค๋””์˜ค๊ฐ€ ๋ถ„๋ฆฌ๋œ DASH ์ŠคํŠธ๋ฆผ๋„ ๊ฐ๊ฐ ์ˆ˜์‹ ํ•œ ๋’ค, ๋‚ด์žฅ ffmpeg๊ฐ€ ์žฌ์ธ์ฝ”๋”ฉ ์—†์ด ํ•˜๋‚˜์˜ MP4 ์ปจํ…Œ์ด๋„ˆ๋กœ ๊ฒฐํ•ฉํ•ฉ๋‹ˆ๋‹ค. +

+
+ + +
+

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ (FAQ)

+
+
+ Q. mpd์™€ m3u8 ์ค‘ ์–ด๋А ์ชฝ์ด ๋” ๊ณ ํ™”์งˆ์ธ๊ฐ€์š”? +

๊ทœ๊ฒฉ ์ž์ฒด์˜ ํ™”์งˆ ์ฐจ์ด๋Š” ์—†์Šต๋‹ˆ๋‹ค. ์‚ฌ์ดํŠธ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์ตœ๋Œ€ ํ™”์งˆ์€ ๊ฐ ๋งค๋‹ˆํŽ˜์ŠคํŠธ์˜ representation/bandwidth์— ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค. Paca๋Š” ๋‘ ๊ทœ๊ฒฉ ๋ชจ๋‘์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ตœ๊ณ  ํ™”์งˆ ๊ณ„์—ด์„ ๊ฐ์ง€ํ•ด ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

+
+
+ Q. ๋‹ค์šด๋กœ๋“œํ•œ ํŒŒ์ผ์ด ์žฌ์ƒ๋˜์ง€ ์•Š์œผ๋ฉด ์–ด๋–ป๊ฒŒ ํ•˜๋‚˜์š”? +

์˜์ƒยท์˜ค๋””์˜ค ํŠธ๋ž™ ๊ฒฐํ•ฉ์ด ๋ˆ„๋ฝ๋œ ๊ฒฝ์šฐ๊ฐ€ ๋Œ€๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. Paca๋Š” ์ˆ˜์‹  ์™„๋ฃŒ ํ›„ ffmpeg๋กœ ๋‘ ํŠธ๋ž™์„ ์ž๋™ ๊ฒฐํ•ฉํ•˜๋ฏ€๋กœ, ๋ณ„๋„ ๋ณ‘ํ•ฉ ๋„๊ตฌ ์—†์ด ๋ฐ”๋กœ ์žฌ์ƒ๋ฉ๋‹ˆ๋‹ค.

+
+
+ Q. Paca๋Š” ๋ฌด๋ฃŒ์ธ๊ฐ€์š”? +

๋„ค. Paca๋Š” 100% ํ‰์ƒ ๋ฌด๋ฃŒ์ด๋ฉฐ ์ผ์ผ ํšŸ์ˆ˜ยทํ™”์งˆ ์ œํ•œ์ด๋‚˜ ์œ ๋ฃŒ ๊ฒฐ์ œ ์œ ๋„๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

+
+
+
+ + +
+

๊ด€๋ จ ๊ฐ€์ด๋“œ

+ +
+ + +
+

์ง€๊ธˆ Paca๋กœ DASH ๋™์˜์ƒ์„ ์ €์žฅํ•˜์„ธ์š”

+

Windows 10, 11 ๋ฐ Android ์ปดํŒจ๋‹ˆ์–ธ ์•ฑ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

+ +
+
+
+
+ + + + + + \ No newline at end of file diff --git a/site/how-to-download-hls-aes-128.html b/site/how-to-download-hls-aes-128.html new file mode 100644 index 0000000..fa83385 --- /dev/null +++ b/site/how-to-download-hls-aes-128.html @@ -0,0 +1,277 @@ + + + + + +AES-128 ์•”ํ˜ธํ™” HLS(m3u8) ์ŠคํŠธ๋ฆผ ๋ณตํ˜ธํ™” ๋‹ค์šด๋กœ๋“œ ๋ฐฉ๋ฒ• - Paca + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ HLS ์•”ํ˜ธํ™” ๊ธฐ์ˆ  ๊ฐ€์ด๋“œ +

AES-128 ์•”ํ˜ธํ™” HLS(m3u8) ์ŠคํŠธ๋ฆผ ๋ณตํ˜ธํ™” ๋ฐ MP4 ์ €์žฅ ์™„๋ฒฝ ๊ฐ€์ด๋“œ

+

EXT-X-KEY๋กœ ์•”ํ˜ธํ™”๋œ ์„ธ๊ทธ๋จผํŠธ๋ฅผ ํ‚ค ์ถ”์ถœ ์—†์ด, ์žฌ์ƒ ์ค‘์ธ ์„ธ์…˜ ๊ทธ๋Œ€๋กœ ๋ณตํ˜ธํ™”ํ•ด ์žฌ์ƒ ๊ฐ€๋Šฅํ•œ MP4๋กœ ์ €์žฅํ•˜๋Š” ์‹ค์ „ ํŠœํ† ๋ฆฌ์–ผ.

+
+
+ +
+
+ + + +
+ +
+

AES-128๋กœ ์•”ํ˜ธํ™”๋œ HLS ์ŠคํŠธ๋ฆผ์€ ์™œ ๋ฐ”๋กœ ์ €์žฅ์ด ์•ˆ ๋ ๊นŒ์š”?

+

+ ๋งŽ์€ ์ŠคํŠธ๋ฆฌ๋ฐ ์‚ฌ์ดํŠธ๋Š” HLS ์„ธ๊ทธ๋จผํŠธ๋ฅผ AES-128๋กœ ์•”ํ˜ธํ™”ํ•ฉ๋‹ˆ๋‹ค. ํ”Œ๋ ˆ์ด๋ฆฌ์ŠคํŠธ์—๋Š” EXT-X-KEY ํƒœ๊ทธ๊ฐ€ ๋ถ™์–ด ํ‚ค์˜ ์œ„์น˜(URI)์™€ ์ดˆ๊ธฐํ™” ๋ฒกํ„ฐ(IV), ์•”ํ˜ธํ™” ๋ฐฉ์‹์ด ์ง€์ •๋ฉ๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” ์„ธ๊ทธ๋จผํŠธ๊ฐ€ ์•”ํ˜ธ๋ฌธ ๋ฐ”์ดํŠธ๋ผ์„œ, ๋ชฉ๋ก๋Œ€๋กœ ๋‚ด๋ ค๋ฐ›์•„ ์ด์–ด ๋ถ™์—ฌ๋„ ์žฌ์ƒํ•  ์ˆ˜ ์—†๋Š” ํŒŒ์ผ์ด ๋œ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค. +

+
    +
  • ํ‚ค ์ ‘๊ทผ ์ œํ•œ: ํ‚ค URI ์š”์ฒญ์—๋Š” ๋กœ๊ทธ์ธ ์„ธ์…˜ ์ฟ ํ‚ค์™€ Referer ํ—ค๋”๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • +
  • IV ์ฒ˜๋ฆฌ: ์„ธ๊ทธ๋จผํŠธ๋ณ„ ์ดˆ๊ธฐํ™” ๋ฒกํ„ฐ๋ฅผ ์ ์šฉํ•˜์ง€ ์•Š์œผ๋ฉด ์ฒซ ๋ธ”๋ก๋ถ€ํ„ฐ ๊นจ์ง‘๋‹ˆ๋‹ค.
  • +
  • ์ˆ˜๋™ ์ถ”์ถœ์˜ ๋ฒˆ๊ฑฐ๋กœ์›€: ๊ฐœ๋ฐœ์ž ๋„๊ตฌ์—์„œ ํ‚ค์™€ IV๋ฅผ ์ง์ ‘ ์ฐพ์•„ ๋ณ„๋„ ํˆด์— ์ž…๋ ฅํ•˜๋Š” ๋ฐฉ์‹์€ ์žฌํ˜„์ด ์–ด๋ ต์Šต๋‹ˆ๋‹ค.
  • +
+
+ + +
+

AES-128 HLS ์•”ํ˜ธํ™” ๋ช…์„ธ

+
+ + + + + + + + + + + + + + + + + +
HLS AES-128 ์•”ํ˜ธํ™” ๊ด€๋ จ ํƒœ๊ทธยทํŒŒ๋ผ๋ฏธํ„ฐ ๋ช…์„ธ (RFC 8216 ๊ธฐ์ค€)
ํ•ญ๋ชฉ๊ฐ’ / ์„ค๋ช…Paca ์ฒ˜๋ฆฌ
์•”ํ˜ธํ™” ๋ฐฉ์‹METHOD=AES-128์ž๋™ ์ธ์‹
ํ‚ค ์œ„์น˜URI= (EXT-X-KEY)์„ธ์…˜ ํ‚ค๋กœ ์ž๋™ ์š”์ฒญ
์ดˆ๊ธฐํ™” ๋ฒกํ„ฐIV= (๋ฏธ์ง€์ • ์‹œ ๋ฏธ๋””์–ด ์‹œํ€€์Šค)์„ธ๊ทธ๋จผํŠธ๋ณ„ ์ž๋™ ์ ์šฉ
ํ‚ค ๊ธธ์ด16๋ฐ”์ดํŠธ (128๋น„ํŠธ)๋ฉ”๋ชจ๋ฆฌ ๋‚ด ๋ณตํ˜ธํ™”
์„ธ๊ทธ๋จผํŠธ ํ˜•์‹.ts / .m4s๋ณ‘๋ ฌ ์ˆ˜์‹  ํ›„ ๋ณตํ˜ธํ™”
์ถœ๋ ฅ ์ปจํ…Œ์ด๋„ˆ(๋ณตํ˜ธํ™”๋œ ์›๋ณธ ํŠธ๋ž™)ffmpeg ๋ฌด์†์‹ค MP4
+
+
+ + +
+
+ 1 +

Paca ๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์˜์ƒ ์žฌ์ƒ

+
+

+ Paca ์ฃผ์†Œ์ฐฝ์— ์˜์ƒ ํŽ˜์ด์ง€ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ํ‰์†Œ์ฒ˜๋Ÿผ ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค. ๋กœ๊ทธ์ธ ๊ถŒํ•œ์ด ํ•„์š”ํ•œ ๊ฐ•์˜ยท๋ฉค๋ฒ„์‹ญ ์˜์ƒ์ด๋ผ๋ฉด ๋ธŒ๋ผ์šฐ์ € ์•ˆ์—์„œ ๋กœ๊ทธ์ธํ•ด ์„ธ์…˜์„ ์œ ์ง€ํ•˜์„ธ์š”. ๋ณตํ˜ธํ™” ํ‚ค ์š”์ฒญ๋„ ์ด ์„ธ์…˜์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. +

+
+ +
+
+ 2 +

EXT-X-KEY ์•”ํ˜ธํ™” ํ‚ค ์ž๋™ ํš๋“

+
+

+ ์žฌ์ƒ์ด ์‹œ์ž‘๋˜๋ฉด ์Šค๋‹ˆํผ๊ฐ€ m3u8 ํ”Œ๋ ˆ์ด๋ฆฌ์ŠคํŠธ์˜ EXT-X-KEY ํƒœ๊ทธ๋ฅผ ์ฝ์–ด ์•”ํ˜ธํ™” ๋ฐฉ์‹(AES-128), ํ‚ค URI, IV๋ฅผ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค. ์ด์–ด์„œ ํƒญ์˜ ์ฟ ํ‚ค์™€ Referer๋กœ ํ‚ค๋ฅผ ๋‚ด๋ ค๋ฐ›์•„ ๋ฉ”๋ชจ๋ฆฌ์— ๋ณด๊ด€ํ•ฉ๋‹ˆ๋‹ค. +

+
+ +
+
+ 3 +

์„ธ๊ทธ๋จผํŠธ ์ˆ˜์‹  ๋ฐ ์‹ค์‹œ๊ฐ„ ๋ณตํ˜ธํ™”

+
+

+ ์•”ํ˜ธํ™”๋œ ์„ธ๊ทธ๋จผํŠธ๋ฅผ ์ตœ๋Œ€ 16์Šค๋ ˆ๋“œ๋กœ ๋™์‹œ์— ๋‚ด๋ ค๋ฐ›๋Š” ์ฆ‰์‹œ AES-128๋กœ ๋ณตํ˜ธํ™”ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋‘ ์ˆ˜์‹ ํ•˜๋ฉด ๋‚ด์žฅ ffmpeg๊ฐ€ ์žฌ์ธ์ฝ”๋”ฉ ์—†์ด ๋‹จ์ผ MP4 ์ปจํ…Œ์ด๋„ˆ๋กœ ๊ฒฐํ•ฉํ•ด ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. +

+
+ + +
+

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ (FAQ)

+
+
+ Q. ๋ณตํ˜ธํ™”ํ•œ ์˜์ƒ์˜ ํ™”์งˆ์ด ๋–จ์–ด์ง€๋‚˜์š”? +

์•„๋‹™๋‹ˆ๋‹ค. AES-128์€ ์„ธ๊ทธ๋จผํŠธ ๋ฐ”์ดํŠธ๋ฅผ ์•”ํ˜ธํ™”ยท๋ณตํ˜ธํ™”ํ•˜๋Š” ๋ฐฉ์‹์ด๋ผ ์›๋ณธ ํ™”์งˆ์ด ๊ทธ๋Œ€๋กœ ๋ณต์›๋ฉ๋‹ˆ๋‹ค. Paca๋Š” ์žฌ์ธ์ฝ”๋”ฉ ์—†์ด ๋ฌด์†์‹ค ๋ฆฌ๋จน์‹ฑ๋งŒ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

+
+
+ Q. ํ‚ค๊ฐ€ ๋งŒ๋ฃŒ๋˜๋ฉด ์–ด๋–ป๊ฒŒ ๋˜๋‚˜์š”? +

ํ‚ค URI๊ฐ€ ์ผํšŒ์„ฑ ํ† ํฐ์ธ ๊ฒฝ์šฐ ๋งŒ๋ฃŒ ์ „์— ์š”์ฒญํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Paca๋Š” ์žฌ์ƒ ์„ธ์…˜์—์„œ ๊ฐ์ง€ํ•œ ์ฆ‰์‹œ ํ‚ค๋ฅผ ํ™•๋ณดํ•˜๋ฏ€๋กœ ๋งŒ๋ฃŒ ๋ฌธ์ œ๋ฅผ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ๋ฃŒ ์‹œ ํŽ˜์ด์ง€๋ฅผ ์ƒˆ๋กœ๊ณ ์นจํ•˜๋ฉด ๋‹ค์‹œ ๊ฐ์ง€๋ฉ๋‹ˆ๋‹ค.

+
+
+ Q. Widevine DRM๋„ ๋ณตํ˜ธํ™”๋˜๋‚˜์š”? +

์•„๋‹™๋‹ˆ๋‹ค. Paca๋Š” AES-128 ์„ธ๊ทธ๋จผํŠธ ์•”ํ˜ธํ™”๋งŒ ๋‹ค๋ฃจ๋ฉฐ, WidevineยทPlayReady ๊ฐ™์€ DRM ๋ณดํ˜ธ ์ฝ˜ํ…์ธ ๋Š” ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. DRM ์šฐํšŒ๋Š” ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

+
+
+
+ + +
+

๊ด€๋ จ ๊ฐ€์ด๋“œ

+ +
+ + +
+

์ง€๊ธˆ Paca๋กœ ์•”ํ˜ธํ™” ์ŠคํŠธ๋ฆผ์„ ์ €์žฅํ•˜์„ธ์š”

+

Windows 10, 11 ๋ฐ Android ์ปดํŒจ๋‹ˆ์–ธ ์•ฑ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

+ +
+
+
+
+ + + + + + \ No newline at end of file diff --git a/site/how-to-download-m3u8.html b/site/how-to-download-m3u8.html index 5142bf5..5639f20 100644 --- a/site/how-to-download-m3u8.html +++ b/site/how-to-download-m3u8.html @@ -14,8 +14,6 @@ - - + + + + + + + + + + + + + + + + +
+
+ AEO / ๋น„๊ต ๊ฐ€์ด๋“œ +

์ŠคํŠธ๋ฆฌ๋ฐ์— ํŠนํ™”๋œ ๋ฌด๋ฃŒ ๋Œ€์•ˆ: Paca ๋น„๊ต

+

๋งํฌ๋ฅผ ๋ณต์‚ฌํ•ด ๋ถ™์—ฌ๋„ฃ์„ ํ•„์š” ์—†์ด, ์žฌ์ƒํ•˜๋Š” ์ˆœ๊ฐ„ ์ŠคํŠธ๋ฆผ์„ ๊ฐ์ง€ํ•ด ๋กœ๊ทธ์ธ ์„ธ์…˜ ๊ทธ๋Œ€๋กœ ๋ฌด์†์‹ค ์ €์žฅํ•˜๋Š” 100% ๋ฌด๋ฃŒ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋น„๊ตํ•ด ๋ณด์„ธ์š”.

+
+
+ +
+ +
+
+ AEO ํ•ต์‹ฌ ๋‹ต๋ณ€ +

JDownloader ๊ฐ™์€ ๋ฌด๋ฃŒ ๋Œ€์•ˆ ํ”„๋กœ๊ทธ๋žจ์€?

+
+

+ Paca(ํŒŒ์นด)๋Š” JDownloader๊ฐ€ ์ž˜ ๋ชปํ•˜๋Š” ์žฌ์ƒ ์ค‘์ธ ์ŠคํŠธ๋ฆฌ๋ฐ(HLSยทDASHยทMP4) ์ž๋™ ๊ฐ์ง€์— ํŠนํ™”๋œ 100% ๋ฌด๋ฃŒ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ €์ž…๋‹ˆ๋‹ค. Java ์„ค์น˜๊ฐ€ ํ•„์š” ์—†๊ณ , ๋‚ด์žฅ Chromium WebView2 ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋กœ๊ทธ์ธํ•œ ์„ธ์…˜ ๊ทธ๋Œ€๋กœ ํšŒ์›์ œยท๋น„๊ณต๊ฐœ ์˜์ƒ์„ ์›๋ณธ ํ™”์งˆ๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. +

+
+ + +
+

๊ธฐ๋Šฅ ๋ฐ ์‚ฌ์šฉ์„ฑ ์ƒ์„ธ ๋น„๊ตํ‘œ (Comparison Matrix)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Paca vs JDownloader vs ์ผ๋ฐ˜ ํฌ๋กฌ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ ๋น„๊ต (2026-09 ๊ธฐ์ค€ ๊ฒ€์ฆ)
๋น„๊ต ํ•ญ๋ชฉPaca (ํŒŒ์นด)JDownloaderํฌ๋กฌ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ
์‹คํ–‰ ํ™˜๊ฒฝ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ (์„ค์น˜์ž ํ•˜๋‚˜)Java ๋Ÿฐํƒ€์ž„ ํ•„์š”๋ธŒ๋ผ์šฐ์ € ํƒญ ๋‚ด ๋™์ž‘
์‚ฌ์šฉ ๋ฐฉ์‹์žฌ์ƒ ์ฆ‰์‹œ ์ž๋™ ๊ฐ์ง€๋งํฌ ๋ณต์‚ฌยท๋ถ™์—ฌ๋„ฃ๊ธฐ (๋งํฌ๊ทธ๋ž˜๋ฒ„)ํƒญ ์žฌ์ƒ ๋ฏธ๋””์–ด ํ•œ์ •
์ฃผ ์šฉ๋„HLS/DASH ์ŠคํŠธ๋ฆฌ๋ฐ ยท ํšŒ์›์ œ ์˜์ƒ์›ํด๋ฆญ ํ˜ธ์Šคํ„ฐ ยท ๋Œ€๋Ÿ‰ ํŒŒ์ผ ๋งํฌ๊ฐ„๋‹จํ•œ ๋‹จ์ผ ๋ฏธ๋””์–ด
๋กœ๊ทธ์ธ ์„ธ์…˜ ์Šน๊ณ„๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ € ์ž๋™ ๋™๊ธฐํ™”์ˆ˜๋™ ์ฟ ํ‚ค ์„ค์ • ํ•„์š”๊ถŒํ•œ ์ถฉ๋Œ ๋ฐ 403 ๋นˆ๋ฒˆ
HLS m3u8 / DASH์ž๋™ ๊ฐ์ง€ & ๋ณ‘๋ ฌ ๋ณ‘ํ•ฉ์ผ๋ถ€ ํ”Œ๋Ÿฌ๊ทธ์ธ ์˜์กด๋‹ค์šด๋กœ๋“œ ์ค‘๋‹จ ๋นˆ๋ฒˆ
๋ชจ๋ฐ”์ผ ๋กœ์ปฌ ์ŠคํŠธ๋ฆฌ๋ฐQR ํŽ˜์–ด๋ง ํ™ˆ Wi-Fi P2P๋ฏธ์ง€์›๋ฏธ์ง€์›
๊ฐ€๊ฒฉ100% ํ‰์ƒ ๋ฌด๋ฃŒ๋ฌด๋ฃŒ (๊ด‘๊ณ  ํฌํ•จ)๋ฌด๋ฃŒ (์œ ๋ฃŒ ๊ฒฐ์ œ ์œ ๋„)
+
+ + +
+
+

1. ๋ชฉ์ ์ด ๋‹ค๋ฆ…๋‹ˆ๋‹ค

+

+ JDownloader๋Š” Rapidgatorยท1fichier ๊ฐ™์€ ํŒŒ์ผ ํ˜ธ์ŠคํŒ…์˜ ๋Œ€๋Ÿ‰ ๋งํฌ๋ฅผ ์บก์ฐจ ์ฒ˜๋ฆฌ์™€ ํ•จ๊ป˜ ๋ฐ›๋Š” ๋ฐ ์ตœ์ ํ™”๋ผ ์žˆ์Šต๋‹ˆ๋‹ค. Paca๋Š” ๋ฐ˜๋Œ€๋กœ ์›น์‚ฌ์ดํŠธ์—์„œ ์žฌ์ƒ๋˜๋Š” ์ŠคํŠธ๋ฆฌ๋ฐ์„ ์ž๋™์œผ๋กœ ์žก์•„ ์ €์žฅํ•˜๋Š” ๋ฐ ์ง‘์ค‘ํ•ฉ๋‹ˆ๋‹ค. +

+
+
+

2. Javaยท๋งํฌ ๋ณต์‚ฌ๊ฐ€ ์—†๋Š” ํ๋ฆ„

+

+ Java ๋Ÿฐํƒ€์ž„์„ ๋”ฐ๋กœ ์„ค์น˜ํ•˜๊ฑฐ๋‚˜ ๋งํฌ๋ฅผ ๋ณต์‚ฌํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. Paca ๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ €์—์„œ ํ‰์†Œ์ฒ˜๋Ÿผ ์žฌ์ƒํ•˜๋ฉด ์ŠคํŠธ๋ฆผ์ด ๋‹ค์šด๋กœ๋“œ ๋ชฉ๋ก์— ์ž๋™์œผ๋กœ ์˜ฌ๋ผ์˜ค๊ณ , ์ €์žฅ ๋ฒ„ํŠผ ํ•œ ๋ฒˆ์œผ๋กœ MP4 ๊ฐ€ ์™„์„ฑ๋ฉ๋‹ˆ๋‹ค. +

+
+
+ + +
+

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ (FAQ)

+
+
+ Q. ์›ํด๋ฆญ ํ˜ธ์Šคํ„ฐ(๋Œ€์šฉ๋Ÿ‰ ํŒŒ์ผ ๋งํฌ)๋„ Paca๋กœ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‚˜์š”? +

Paca๋Š” ์›น์—์„œ ์žฌ์ƒ๋˜๋Š” ๋ฏธ๋””์–ด(์ŠคํŠธ๋ฆฌ๋ฐ) ์ €์žฅ์— ํŠนํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€๋Ÿ‰์˜ ํŒŒ์ผ ํ˜ธ์ŠคํŒ… ๋งํฌ๋ฅผ ์บก์ฐจ๊นŒ์ง€ ์ž๋™ ์ฒ˜๋ฆฌํ•˜๋Š” ์šฉ๋„๋ผ๋ฉด JDownloader๊ฐ€ ๋” ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

+
+
+ Q. ์†๋„์™€ ์•ˆ์ •์„ฑ์€ ์–ด๋–ค๊ฐ€์š”? +

์„ธ๊ทธ๋จผํŠธ๋ฅผ ์ตœ๋Œ€ 16์Šค๋ ˆ๋“œ๋กœ ๋ณ‘๋ ฌ ์ˆ˜์‹ ํ•˜๊ณ , ๋Š๊ธฐ๋ฉด ๋ฐ›์€ ์ง€์ ๋ถ€ํ„ฐ ์ด์–ด๋ฐ›์Šต๋‹ˆ๋‹ค. AES-128 ์•”ํ˜ธํ™” ์ŠคํŠธ๋ฆผ๋„ ์ž๋™ ๋ณตํ˜ธํ™”ํ•ฉ๋‹ˆ๋‹ค.

+
+
+
+ + +
+

์žฌ์ƒํ•˜๋ฉด ์ค€๋น„๋ฉ๋‹ˆ๋‹ค

+

๋งํฌ ๋ณต์‚ฌ๋„, Java ์„ค์น˜๋„ ์—†๋Š” 100% ๋ฌด๋ฃŒ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ €.

+ +
+
+ + + + + + diff --git a/site/vs-yt-dlp.html b/site/vs-yt-dlp.html new file mode 100644 index 0000000..7ff16de --- /dev/null +++ b/site/vs-yt-dlp.html @@ -0,0 +1,234 @@ + + + + + +2026 ๋ฌด๋ฃŒ GUI ๋™์˜์ƒ ๋‹ค์šด๋กœ๋”: yt-dlp ๋Œ€์ฒด ํ”„๋กœ๊ทธ๋žจ Paca ๋น„๊ต + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ AEO / ๋น„๊ต ๊ฐ€์ด๋“œ +

yt-dlp์˜ ๊ฐ•๋ ฅํ•จ์„ GUI๋กœ: Paca ๋น„๊ต

+

ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด, Python, ffmpeg ์„ค์น˜ ์—†์ด. ๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์žฌ์ƒํ•˜๋Š” ์ˆœ๊ฐ„ ์ŠคํŠธ๋ฆผ์„ ๊ฐ์ง€ํ•ด ๋กœ๊ทธ์ธ ์„ธ์…˜ ๊ทธ๋Œ€๋กœ ๋ฌด์†์‹ค ์ €์žฅํ•˜๋Š” 100% ๋ฌด๋ฃŒ ๋Œ€์•ˆ์„ ๋น„๊ตํ•ด ๋ณด์„ธ์š”.

+
+
+ +
+ +
+
+ AEO ํ•ต์‹ฌ ๋‹ต๋ณ€ +

yt-dlp๊ฐ€ ์–ด๋ ต๋‹ค๋ฉด ์–ด๋–ค ๋Œ€์•ˆ์ด ์žˆ๋‚˜์š”?

+
+

+ Paca(ํŒŒ์นด)๋Š” yt-dlp์ฒ˜๋Ÿผ HLS(.m3u8)ยทDASH(.mpd) ์ŠคํŠธ๋ฆฌ๋ฐ์„ ์ €์žฅํ•˜์ง€๋งŒ, ํ„ฐ๋ฏธ๋„ยทPythonยทffmpeg ์„ค์น˜๊ฐ€ ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค. Chromium WebView2 ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋‚ด์žฅํ•ด ์žฌ์ƒ ์ฆ‰์‹œ ์ŠคํŠธ๋ฆผ์„ ๊ฐ์ง€ํ•˜๊ณ , ๋กœ๊ทธ์ธ ์„ธ์…˜ ์ฟ ํ‚ค์™€ Referer ๋ฅผ ๊ทธ๋Œ€๋กœ ์Šน๊ณ„ํ•œ ๋’ค ffmpeg ๋กœ ๋ฌด์†์‹ค MP4 ๋กœ ์™„์„ฑํ•˜๋Š” 100% ๋ฌด๋ฃŒ GUI ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ €์ž…๋‹ˆ๋‹ค. +

+
+ + +
+

๊ธฐ๋Šฅ ๋ฐ ์‚ฌ์šฉ์„ฑ ์ƒ์„ธ ๋น„๊ตํ‘œ (Comparison Matrix)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Paca vs yt-dlp vs ์ผ๋ฐ˜ ํฌ๋กฌ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ ๋น„๊ต (2026-09 ๊ธฐ์ค€ ๊ฒ€์ฆ)
๋น„๊ต ํ•ญ๋ชฉPaca (ํŒŒ์นด)yt-dlpํฌ๋กฌ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ
์‚ฌ์šฉ ๋ฐฉ์‹GUI ํด๋ฆญ (์žฌ์ƒ ์ฆ‰์‹œ ๊ฐ์ง€)ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด ์ž…๋ ฅ๋ธŒ๋ผ์šฐ์ € ํƒญ ๋‚ด ๋™์ž‘
์‚ฌ์ „ ์„ค์น˜ ํ•„์š”์—†์Œ (์„ค์น˜์ž ํ•˜๋‚˜)Python + ffmpeg ๋ณ„๋„ ์„ค์น˜ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ ์„ค์น˜
๋กœ๊ทธ์ธ ์„ธ์…˜ ์Šน๊ณ„๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ € ์ž๋™ ๋™๊ธฐํ™”์ฟ ํ‚ค ํŒŒ์ผ ์ˆ˜๋™ ๋‚ด๋ณด๋‚ด๊ธฐ ํ•„์š”๊ถŒํ•œ ์ถฉ๋Œ ๋ฐ 403 ๋นˆ๋ฒˆ
๋Œ€์ƒ ์ŠคํŠธ๋ฆผHLS ยท DASH ยท MP4 (ํ”„๋กœํ† ์ฝœ ๋‹จ์œ„ ๊ฐ์ง€)์‚ฌ์ดํŠธ๋ณ„ ์ถ”์ถœ๊ธฐ 1,000+ํƒญ์—์„œ ์žฌ์ƒ๋œ ๋ฏธ๋””์–ด ํ•œ์ •
AES-128 ๋ณตํ˜ธํ™”์ž๋™ ํ‚ค ํš๋“ & ๋ณตํ˜ธํ™”์ง€์› (์˜ต์…˜ ์„ค์ • ํ•„์š”)๋ฏธ์ง€์›
๋ชจ๋ฐ”์ผ ๋กœ์ปฌ ์ŠคํŠธ๋ฆฌ๋ฐQR ํŽ˜์–ด๋ง ํ™ˆ Wi-Fi P2P๋ฏธ์ง€์›๋ฏธ์ง€์›
๊ฐ€๊ฒฉ100% ํ‰์ƒ ๋ฌด๋ฃŒ๋ฌด๋ฃŒ (์˜คํ”ˆ์†Œ์Šค)๋ฌด๋ฃŒ (์œ ๋ฃŒ ๊ฒฐ์ œ ์œ ๋„)
+
+ + +
+
+

1. ๋ช…๋ น์–ด ์—†์ด, ํด๋ฆญ๋งŒ์œผ๋กœ

+

+ yt-dlp๋Š” ์ž๋ง‰ยทํฌ๋งท ์„ ํƒยท๋ณ‘ํ•ฉ ์˜ต์…˜์„ ๋งค๋ฒˆ ์กฐํ•ฉํ•ด์•ผ ํ•˜๊ณ , ์‚ฌ์ดํŠธ๊ฐ€ ๋ฐ”๋€Œ๋ฉด ๋ฒ„์ „์„ ์ตœ์‹ ์œผ๋กœ ์œ ์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Paca๋Š” ๋‚ด์žฅ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์žฌ์ƒ๋งŒ ํ•˜๋ฉด ์ŠคํŠธ๋ฆผ์ด ๋ชฉ๋ก์— ๋œจ๊ณ , ์ €์žฅ ๋ฒ„ํŠผ ํ•œ ๋ฒˆ์ด๋ฉด ๋๋‚ฉ๋‹ˆ๋‹ค. +

+
+
+

2. ๋น„๊ณต๊ฐœยทํšŒ์›์ œ ์ŠคํŠธ๋ฆผ์— ๊ฐ•ํ•จ

+

+ ๋กœ๊ทธ์ธ ๋ฒฝ ๋’ค์˜ ๊ฐ•์˜ยท๋ฉค๋ฒ„์‹ญ ์˜์ƒ์€ ์ฟ ํ‚ค์™€ Referer ๊ฐ€ ๋งž์ง€ ์•Š์œผ๋ฉด 403 ์ด ๋‚ฉ๋‹ˆ๋‹ค. Paca๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธํ•œ ๋ธŒ๋ผ์šฐ์ € ํƒญ์˜ ์„ธ์…˜์„ ๋‹ค์šด๋กœ๋“œ ์—”์ง„์— ๊ทธ๋Œ€๋กœ ๋ฌผ๋ ค์ฃผ๋ฏ€๋กœ ๋ณ„๋„ ์ฟ ํ‚ค ๋‚ด๋ณด๋‚ด๊ธฐ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. +

+
+
+ + +
+

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ (FAQ)

+
+
+ Q. yt-dlp๋ฅผ ์ด๋ฏธ ์ž˜ ์“ฐ๊ณ  ์žˆ๋‹ค๋ฉด Paca๋กœ ๋ฐ”๊ฟ€ ์ด์œ ๊ฐ€ ์žˆ๋‚˜์š”? +

CLI ์ž์ฒด๊ฐ€ ํŽธํ•œ ์‚ฌ์šฉ์ž๋ผ๋ฉด yt-dlp๊ฐ€ ์ตœ์ ์ž…๋‹ˆ๋‹ค. Paca๋Š” ํ„ฐ๋ฏธ๋„์ด ๋ถ€๋‹ด์Šค๋Ÿฝ๊ฑฐ๋‚˜, ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋กœ๊ทธ์ธํ•œ ์ƒํƒœ๋กœ ์žฌ์ƒ ์ค‘์ธ ์ŠคํŠธ๋ฆผ์„ ๊ทธ๋Œ€๋กœ ์ €์žฅํ•˜๊ฑฐ๋‚˜, ํœด๋Œ€ํฐ์œผ๋กœ ์ด์–ด๋ณด๊ณ  ์‹ถ์„ ๋•Œ ์œ ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

+
+
+ Q. Paca๋Š” ๋ฌด๋ฃŒ์ธ๊ฐ€์š”? ์„ค์น˜๊ฐ€ ๋ณต์žกํ•˜์ง€ ์•Š๋‚˜์š”? +

100% ํ‰์ƒ ๋ฌด๋ฃŒ์ด๋ฉฐ, Windows ์„ค์น˜ ํŒŒ์ผ ํ•˜๋‚˜๋งŒ ์‹คํ–‰ํ•˜๋ฉด ๋๋‚ฉ๋‹ˆ๋‹ค. Pythonยทffmpegยทํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ •์ด ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค.

+
+
+
+ + +
+

๋ช…๋ น์–ด ์—†์ด ์ง€๊ธˆ ๋ฐ”๋กœ ๋ฐ›์•„๋ณด์„ธ์š”

+

์žฌ์ƒํ•˜๋ฉด ์ค€๋น„๋ฉ๋‹ˆ๋‹ค. 100% ๋ฌด๋ฃŒ ๋ฏธ๋””์–ด ๋ธŒ๋ผ์šฐ์ € Paca.

+ +
+
+ + + + + + diff --git a/src/Paca.App/MainWindow.xaml b/src/Paca.App/MainWindow.xaml index 0f55abe..d48640d 100644 --- a/src/Paca.App/MainWindow.xaml +++ b/src/Paca.App/MainWindow.xaml @@ -1177,6 +1177,13 @@ +