# Click the link below β no installation needed
https://conduit-iota-rust.vercel.appPaste this test URL into the input field:
https://videy.co/v?id=o8KUmW4
| Method | Providers | Cost | Setup Time |
|---|---|---|---|
| GitHub Codespaces | β All 4 providers | Free (60h/month) | 1 click |
| Docker | β All 4 providers | Free (forever) | ~2 minutes |
| Local CLI | β All 4 providers | Free (forever) | ~3 minutes |
- Multi-provider β Supports
videqs.download,playvvip.top,fwh.is, andvidey.co - Direct resolution β
videy.coURLs resolved instantly (no browser needed) - Smart detection β Playwright headless Chrome intercepts network traffic and scans DOM for media sources
- Heuristic scoring β 15+ rules to select the best media candidate while filtering ads and trackers
- Proxy download β Streams media with proper headers and range request support
- Production-grade security β Helmet, CORS, rate limiting, Zod input validation, structured error handling
- 99 tests β Unit + integration, 90%+ line coverage
- Docker ready β One-command setup with
docker compose up
| Layer | Technology |
|---|---|
| Frontend | React 19, Vite 8, Tailwind CSS 3, shadcn/ui, Lucide icons |
| Backend | Express 5, TypeScript (strict), Playwright 1.42, Zod 4, Pino |
| Testing | Vitest, Supertest, V8 coverage |
| CI/CD | GitHub Actions, Vercel |
| DevOps | Docker Compose, Husky, lint-staged |
This project uses Playwright (headless Chromium) to extract video streams. Chromium is a ~300MB binary needing 1-2GB of RAM. Most free hosting platforms cannot run it:
| Platform | Free Tier | Playwright-Compatible | Hidden Cost |
|---|---|---|---|
| Vercel | β Free, no CC | β 10s timeout, no persistent processes | β |
| Netlify | β Free, no CC | β No headless browser support | β |
| Render | β 750h/month | β Runs Docker | 512MB RAM limit, $5/month if exceeded |
| Fly.io | β 3 shared VMs | β Runs Docker | Requires credit card |
| Railway | β $5 credit then pay | β Runs Docker | Requires credit card |
ββββββββββββββββββββββββββββββββββββββββ
β Vercel (Free, No CC) β
β β
β ββββββββββββββββββββββββββββββββ β
β β Frontend (React SPA) β β Always UP
β ββββββββββββββββββββββββββββββββ β
β ββββββββββββββββββββββββββββββββ β
β β Serverless API β β videy.co direct resolve
β β /api/v1/extract β β (no Playwright needed)
β ββββββββββββββββββββββββββββββββ β
ββββββββββββ¬ββββββββββββββββββββββββββββ
β (non-videy providers)
βΌ
ββββββββββββββββββββββββββββββββββββββββ
β GitHub Codespaces / Local (Free) β
β β
β ββββββββββββββββββββββββββββββββ β
β β Full Backend + Playwright β β All 4 providers
β ββββββββββββββββββββββββββββββββ β
ββββββββββββββββββββββββββββββββββββββββ
- Pragmatism β The live demo showcases the product and the
videy.coflow. Full functionality is one click away in Codespaces. - Zero cost guarantee β No credit card required at any layer. No surprise bills.
- Always accessible β The Vercel frontend is up 24/7. Only Playwright-dependent providers need the full backend.
- Transparent β Users know upfront which providers work on the demo.
Click the badge above. Codespaces auto-installs everything including Playwright Chromium. 60 hours/month free, no credit card.
# Prerequisites: Node.js >= 22, npm >= 10
git clone https://github.com/mifdlaldev/conduit.git
cd conduit
# Backend
cd backend
npm install
npm run playwright:install # Installs Chromium
npm run dev # β localhost:3001
# Frontend (new terminal)
cd ../frontend
npm install
npm run dev # β localhost:5173docker compose up# videy.co β should return 200 with direct download URL
curl -X POST https://conduit-iota-rust.vercel.app/api/v1/extract \
-H "Content-Type: application/json" \
-d '{"url":"https://videy.co/v?id=o8KUmW4"}'
# Non-videy provider β should return 501 with setup instructions
curl -X POST https://conduit-iota-rust.vercel.app/api/v1/extract \
-H "Content-Type: application/json" \
-d '{"url":"https://videqs.download/test"}'cd backend
npm test # 99 tests
npm run test:coverage # 90%+ coverageExtract a video URL from a supported provider.
Request:
{ "url": "https://videqs.download/abc123" }Success (200):
{
"meta": { "status": 200, "message": "Success" },
"data": {
"title": "Video Title",
"downloadUrl": "https://cdn.provider.com/video.mp4",
"provider": "videqs",
"deliveryMethod": "proxy",
"proxyDownloadUrl": "/api/v1/extract/download?source=..."
}
}| Status | Meaning |
|---|---|
200 |
Video extracted successfully |
400 |
Invalid URL or unsupported domain |
404 |
No media stream found |
429 |
Rate limited (5 req/min) |
501 |
Provider needs full backend (Playwright) |
503 |
Playwright browser not installed |
Proxy download a media stream.
| Param | Required | Description |
|---|---|---|
source |
β | Direct media URL from extraction |
headers |
β | Base64url-encoded JSON of request headers |
filename |
β | Custom filename |
Supports range requests for resumable downloads.
conduit/
βββ frontend/
β βββ api/v1/extract.ts # Serverless function (videy.co resolve)
β βββ src/
β β βββ App.tsx # Main UI with dark theme + glassmorphism
β β βββ components/ui/ # shadcn/ui components
β β βββ lib/utils.ts # cn() utility
β βββ vercel.json # Vercel config
β βββ package.json
βββ backend/
β βββ src/
β β βββ index.ts # Express app entry
β β βββ config.ts # Zod-validated environment
β β βββ logger.ts # Pino structured logger
β β βββ extractor/
β β βββ errors.ts # Custom error classes
β β βββ helpers.ts # 17 pure utility functions
β β βββ schemas.ts # Input validation
β β βββ browser.ts # Playwright lifecycle
β β βββ routes.ts # Route handlers
β β βββ providers/
β β βββ videy.ts # Videy direct resolver
β βββ src/__tests__/ # 99 tests (Vitest)
βββ .github/workflows/ci.yml # CI pipeline
cd backend
npm test # 99 tests, all passing
npm run test:coverage # 90%+ line coverage| Metric | Coverage |
|---|---|
| Statements | 90.01% |
| Branches | 86.06% |
| Functions | 92.30% |
| Lines | 90.01% |
| Variable | Default | Description |
|---|---|---|
PORT |
3001 |
Backend server port |
NODE_ENV |
development |
development, production, or test |
ALLOWED_ORIGINS |
* |
Comma-separated CORS origins |
LOG_LEVEL |
info |
Pino log level |
VITE_BACKEND_URL |
http://localhost:3001 |
Frontend β backend proxy |
See CHANGELOG.md.
Designed for zero-cost, no-CC deployment.
