System Architecture
Architecture Overview
Section titled “Architecture Overview”┌─────────────────┐ ┌──────────────────┐ ┌──────────────────┐│ Landing Page │ │ Console │ │ Seller Portal ││ (Next.js 16) │ │ (React + Vite) │ │ (React + Vite) ││ Product │ │ End user │ │ Reseller ││ landing page │ │ dashboard │ │ dashboard ││ │ │ │ │ │└────────┬────────┘ └────────┬─────────┘ └────────┬─────────┘ │ │ │ │ ┌────────▼──────────┐ │ └──────────────► API Backend ◄──────────────┘ │ (api.prx.network)│ │ Go + Encore │ └───────────────────┘Components
Section titled “Components”Landing Page (netproxy-index-v2)
Section titled “Landing Page (netproxy-index-v2)”- Stack: Next.js 16, React 19, TypeScript, Tailwind CSS 4
- Purpose: Product showcase page to attract customers
- Features: 14 languages, dark mode, animations (Framer Motion, GSAP), SEO
- Deploy: Cloudflare Pages (recommended) or Vercel
- Repo: github.com/lebachhiep/netproxy-index-v2
Console (netproxy-console-v2)
Section titled “Console (netproxy-console-v2)”- Stack: React 19, Vite 6, TypeScript 5.8, Tailwind CSS 4, SCSS
- Purpose: End-user control panel
- Features: Purchase proxies, manage subscriptions, e-wallet, order history, 14 languages
- Deploy: Vercel (recommended) or Cloudflare Pages
- Repo: github.com/lebachhiep/netproxy-console-v2
Seller Portal
Section titled “Seller Portal”- URL: seller.prx.network
- Purpose: Reseller control panel — operated by NetProxy
- Features: Manage pricing, users, orders, branding, payments, and reports
API Backend
Section titled “API Backend”- URL:
api.prx.network - Purpose: Single API system serving all frontends
- Operated by NetProxy — resellers do not need to deploy the backend
Core Flows
Section titled “Core Flows”User Registration Flow
Section titled “User Registration Flow”- Visitor lands on the reseller’s Landing Page
- Clicks “Sign Up” and is redirected to the Console
- Registers an account on the Console
- The backend automatically associates the user with the reseller based on the domain
Proxy Purchase Flow
Section titled “Proxy Purchase Flow”- User logs in to the Console
- Selects proxy type, country, and duration, then adds to cart
- Pays through the payment gateway configured by the reseller
- Backend receives a webhook confirmation and processes the order
- A worker purchases the proxy from the provider and creates a subscription
- User receives proxy credentials (IP, port, username, password)
Pricing Flow
Section titled “Pricing Flow”- NetProxy sets the base price for each proxy plan
- Reseller sets a multiplier on the Seller Portal
- User sees the price = base price x multiplier
- Coupons apply an additional discount on top of the final price
White-label Flow
Section titled “White-label Flow”- Reseller configures domain + logo + favicon on the Seller Portal
- Console fetches branding information from the API based on the request domain
- The interface automatically displays the reseller’s branding
Authentication
Section titled “Authentication”- Uses JWT (JSON Web Token)
- Access token: expires after 15 minutes
- Refresh token: expires after 30 days
- Automatically refreshes the token upon receiving a 401 error
- Supports “Remember me” — Persists the login session for subsequent visits. The account is automatically logged out if the user does not check “Remember me”