Skip to main content

Deployment

NeoMovies API v2 is deployed on Vercel as Rust serverless functions (api/*.rs) and builds Docusaurus docs from docs/.

Prerequisites​

1. Local Validation​

cp .env.example .env
cargo check
cargo test --lib

2. Run API Locally​

cargo run --bin server

Default local API URL: http://localhost:3000/api/v1.

Port can be set via:

  • LOCAL_SERVER_PORT (priority)
  • PORT

Example:

LOCAL_SERVER_PORT=3001 cargo run --bin server

For local docs preview, run Docusaurus separately:

npm --prefix docs ci
npm --prefix docs run start

Default local docs URL: http://localhost:3000/docs.

3. Deploy to Vercel​

vercel deploy --prod

vercel.json defines:

  • buildCommand: npm --prefix docs ci && npm --prefix docs run build
  • rewrites for docs (/) and API (/api/v1/*)

Environment Variables​

VariableRequiredDescription
MONGO_URI✅MongoDB connection string
JWT_SECRET✅JWT signing secret
MONGO_DB_NAME—DB name (default: neomovies)
KPAPI_KEY✅Kinopoisk API key
KPAPI_BASE_URL—KP API base URL
NEO_ID_URL✅Neo ID base URL
NEO_ID_API_KEY✅Neo ID API key
NEO_ID_SITE_ID✅Neo ID site ID
ALLOHA_TOKEN—Alloha token
LUMEX_URL—Lumex embed base URL
VIBIX_HOST—Vibix host
VIBIX_TOKEN—Vibix token
HDVB_TOKEN—HDVB token
COLLAPS_API_HOST—Collaps API host
COLLAPS_TOKEN—Collaps token
REDAPI_BASE_URL—Torrent API base URL

Routes After Vercel Deploy​

  • / — docs site (Vercel-only route)
  • /api/v1/* — REST API