No description
  • TypeScript 87.6%
  • CSS 10.3%
  • Dockerfile 0.8%
  • JavaScript 0.8%
  • HTML 0.5%
Find a file
2026-05-28 12:38:41 +00:00
backend fix deploy 2026-05-28 12:33:34 +00:00
frontend fix deploy 2026-05-28 12:33:34 +00:00
.env.example fix deploy 2026-05-28 12:33:34 +00:00
.gitignore update 2026-05-28 05:36:10 +00:00
docker-compose.yml fix compose 2026-05-28 12:38:41 +00:00
ecosystem.config.js fix deploy 2026-05-28 12:33:34 +00:00
README.md update 2026-05-28 05:36:10 +00:00

Poporoxy

Proxy scraper system with automated testing, filtering, and management.

Architecture

  • Backend: Bun + Hono + SQLite
  • Frontend: Vanilla TypeScript + Vite (Brutalism Night Mode)

Quick Start

Development

# Install backend dependencies
cd backend && bun install

# Install frontend dependencies
cd ../frontend && bun install

# Start backend (port 3001)
cd backend && bun run dev

# Start frontend dev server (port 5173, proxies API to backend)
cd frontend && bun run dev

Docker

docker compose up -d

PM2

# Build frontend first
cd frontend && bun install && bun run build
cp -r dist ../backend/public

# Start with PM2
cd .. && pm2 start ecosystem.config.js

Environment Variables

Variable Default Description
PORT 3001 Server port
JWT_SECRET poporoxy-secret-key-change-in-production JWT signing secret
DB_PATH poporoxy.db SQLite database path

API Endpoints

Auth

  • POST /api/auth/register - Register { username, password }
  • POST /api/auth/login - Login { username, password }

Proxies (Auth Required)

  • POST /api/proxies/scrape - Scrape, test, and save proxies
  • POST /api/proxies/retest - Re-test all saved proxies
  • GET /api/proxies - List all proxies
  • GET /api/proxies/stats - Get proxy statistics
  • POST /api/proxies/test/:id - Re-test a single proxy
  • DELETE /api/proxies/:id - Delete a proxy
  • DELETE /api/proxies - Clear all proxies

Config (Auth Required)

  • GET /api/config - Get user config
  • PUT /api/config - Update config { response_time_target, web_target, limit_val }

Features

  • Scrape proxies from remote API endpoint
  • Filter online proxies only
  • Test each proxy for:
    • Country detection via IP checker endpoint
    • Web target accessibility (configurable target URL)
    • Response time measurement
  • Only save proxies that pass response time target AND web target check
  • Per-user configuration and proxy lists
  • Encrypted password storage (bcrypt)
  • JWT authentication