Requirements
Server and environment requirements for running KissKH Video Player
Server Requirements
KissKH Video Player is a standard Node.js HTTP server built with Express. It runs on any Linux, Windows, or macOS server that meets the following requirements.
| Requirement | Value |
|---|---|
| Node.js | 18.0.0 or higher |
| npm | Included with Node.js |
| RAM | 256 MB minimum (512 MB+ recommended for caching) |
| Network | Outbound HTTPS access to kisskh.co and its CDN |
The server uses the native fetch API and AbortSignal.timeout() which require Node.js 18 or higher. Earlier versions will not work.
Hosting Compatibility
The server is compatible with:
- VPS / Dedicated servers — Any provider (DigitalOcean, Linode, Vultr, Hetzner, etc.)
- Shared cPanel hosting — Supported via Node.js Application in cPanel (Passenger / LiteSpeed)
- PaaS platforms — Railway, Render, Fly.io, or any platform that runs Node.js apps
- Self-hosted — Your own machine or home server
If your host runs cPanel with Passenger, set the Application Root to the project folder and the Application Startup File to src/server.js. The PORT env var will be injected automatically by Passenger — do not hardcode it.
Network Requirements
The server makes outbound HTTPS requests to:
kisskh.co— KissKH API (episode data, subtitle list)- KissKH video CDN domains (e.g.
hls03.videodelivery2.site,cdn.kisskh.co) — video segments and subtitle files
Your server must be able to reach these domains. If your host blocks outbound traffic by default, you will need to open outbound HTTPS (port 443).
Some KissKH CDN domains actively block requests from certain cloud provider IP ranges (e.g. major US datacenters). If video segments return 403 errors, try a different VPS provider or region. Residential and EU servers tend to work best.
Optional: Redis
By default the server caches episode and subtitle data in memory. For high-traffic deployments or multi-instance setups, you can point it at a Redis instance via the REDIS_URL environment variable. Redis is entirely optional — the server works fine without it.
| Redis | Version |
|---|---|
| Redis / Valkey | 6.0 or higher |
| Protocol | redis:// or rediss:// (TLS) |
Dependencies
All npm dependencies are listed in package.json. The only runtime dependencies are:
| Package | Purpose |
|---|---|
express | HTTP server framework |
crypto-js | Subtitle decryption (CryptoJS — matches KissKH's client-side cipher) |
Install them with:
npm installNo other system packages or build steps are required.