Advanced Search
Search Results
48 total results found
Project Structure
A Node.js project in ZyveraWeb follows a specific directory layout. Directory Layout plugins/ZyveraWeb/site/<project-name>/ ├── server.js # Backend handler (JavaScript) ├── public/ # Static frontend files │ ├── index.html │ ├── style....
server.js API
The server.js file is the backend entry point for a Node.js project. It must define a global handleRequest function. The request Object The function receives a request object with these properties: Property Type Description request.method string HTTP me...
NPM Packages
ZyveraWeb includes a pure-JVM npm client that can download and install npm packages without requiring Node.js or shell access. How Package Installation Works The plugin reads package.json from each Node.js project. It fetches package metadata from https://reg...
React and SSR
ZyveraWeb supports React applications in two modes: 1. Single Page Application (SPA) Build your React app with Vite, Create React App, or any bundler, and place the output in public/. Project structure: plugins/ZyveraWeb/site/react-app/ ├── public/ │ ├── ind...
Example Projects
ZyveraWeb creates two example Node.js projects on first run to help you get started. Demo Project Location: plugins/ZyveraWeb/site/demo/ A simple API backend with a vanilla JavaScript frontend. Frontend (public/) A basic HTML page with buttons to call the API ...
Automatic SSL
ZyveraWeb includes a built-in ACME v2 client that can obtain free SSL certificates from Let's Encrypt automatically. Overview The ACME (Automatic Certificate Management Environment) protocol allows automatic certificate issuance and renewal. ZyveraWeb supports...
HTTP Challenge
The HTTP-01 challenge is the simplest way to validate domain ownership. Let's Encrypt makes an HTTP request to http://<your-domain>/.well-known/acme-challenge/<token> and checks for a specific response. Requirements The web server must be accessible on port 8...
DNS Challenge
The DNS-01 challenge validates domain ownership by requiring you to add a specific DNS TXT record. This method works even if your server is not publicly accessible on port 80. When to Use DNS-01 Your server is behind a NAT or firewall Port 80 is already in us...
Manual SSL
If you prefer not to use Let's Encrypt, or if you have an existing certificate, you can configure SSL manually. Step 1: Obtain a Certificate You can use: A certificate from a commercial CA (DigiCert, Sectigo, etc.) A self-signed certificate (for testing only)...
Players API
Endpoint: GET /api/players Returns a comma-separated list of currently online player names. Available on all supported platforms. Response Content-Type: text/plain Alice,Bob,Charlie If no players are online, the response is an empty string. Rate Limiting This...
PlaceholderAPI
Endpoint: GET /api/placeholder Resolves PlaceholderAPI placeholders via HTTP. Available only on the Bukkit platform (requires PlaceholderAPI as a soft dependency). Query Parameters Parameter Required Description placeholder Yes The PlaceholderAPI placeh...
Custom Endpoints
ZyveraWeb comes with a set of built-in HTTP endpoints. These are registered internally and are not part of a public API. Available Endpoints Path Platform Description /api/players All platforms Returns comma-separated list of online player names /api/...
ZyveraWeb Command
The main admin command for plugin information, configuration reload, and Node.js package management. Usage /zyveraweb [reload | node <install|list> [site]] Subcommands No Arguments Displays plugin information: === ZyveraWeb Info === Version: 1.0.0 Web Server:...
WebServer Command
Controls the web server lifecycle — start, stop, and restart. Usage /zyveraweb server <start | stop | restart> Subcommands start Starts the web server. This is called automatically on plugin enable, but can be used to restart the server after a manual stop. /...
ACME Command
Manages the Let's Encrypt ACME workflow for automatic SSL certificate issuance. Usage /zyveraweb acme start <domain> [http|dns] /zyveraweb acme tos /zyveraweb acme confirm Subcommands start <domain> [http|dns] Begins the ACME certificate issuance process. ...
Permissions Reference
Permission Nodes Permission Default Description zyveraweb.info Everyone Access to /zyveraweb (info and reload) zyveraweb.acme.use Operators /zyveraweb acme command for SSL certificate management zyveraweb.server Operators Parent permission for serve...
Bukkit Spigot Paper
The primary platform for ZyveraWeb. Supports servers running Minecraft 1.16 and above. Platform Features Feature Support Static file hosting ✓ Reverse proxy ✓ Node.js / GraalJS ✓ Virtual hosting ✓ ACME / Let's Encrypt ✓ Rate limiting ✓ /api/...
Folia
ZyveraWeb fully supports Folia, Paper's regionized server architecture, through FoliaLib. Automatic Detection The Bukkit platform automatically detects Folia and switches to the correct scheduler. No configuration changes are needed. Compatibility All ZyveraWe...