Changelog v3.2.22
2026-06-07
repository
- Add safe repo config in pullSourceRepo (4325c1ba7)
docs
- Restore runtimeConfig docs logic (819792d1d)
- Enhance favicon resolution logic in buildJsDocs function to handle missing files (4b4b6cca2)
- Fix favicon path resolution in buildJsDocs function to handle missing files (a572ffaf8)
- Update favicon path in buildJsDocs function to use publicClientId for dynamic resolution (d839d6a02)
monitor
- Add support for custom image names in deployment scripts (2d4ddf731)
- Enhance transport handling in UnderpostMonitor: Default to exec, add opt-in for http (eebe7ef03)
- Refactor test-monitor script: Enhance deployment modes and flag parsing (07b65b004)
- Enhance runtime status handling with exec transport and kubernetes gate (135773938)
deploy
- Refactor deployment commands to use dynamic node names and update MongoDB flag in run command (b6a1dc9c7)
cli-start
- Add error handling for deployment build/init process in UnderpostStartUp class (6c7d7e056)
- Add support for private test repositories in build and monitor scripts (23837d02b)
ipfs
- Refactor IPFS API URL functions to include container check for development environment (61e3fcd1e)
client-core
- Fix bug Panel component; when the user writes markdown content but uploads missing reload md file (f91da9780)
New release v:3.2.21 (2026-06-06)
release
- Add options for MongoDB and Valkey configuration in build process (7dba2a68a)
repository
- Enhance deployment process: Include deploy ID in logging and update build commands (aedd99415)
- Add --has-changes option to check for staged or unstaged git changes and update template repo logic (f479994a4)
- Ensure repository directory is created before initialization (5cb66853f)
docs
- Refactor CLI documentation generation: Update command argument and option sections for improved clarity (fd20febb1)
deploy
- Add support for self-signed TLS certificates and related options in deployment scripts (d03ddf7b7)
- Add localProxy option to enable TCP port forwarding and path-based routing (6b6c03a4c)
- Add exposeLocalPort option for custom local port configuration in deployment (60fe88b95)
- Refactor deployment scripts: Update commands in engine-test workflow and add link-local CLI script (8506dbca4)
cli-run
- Add build-cluster-deployment-manifests method and update test-monitor script: Implement deployment manifest building for production and development environments. (be2c5a71e)
- Add etc-hosts method: Modify /etc/hosts file for local service access (c4e7ba286)
monitor
- Refactor monitoring and deployment port resolution: Introduce deployStatusPort for consistent internal status port handling and implement findFreePort for ephemeral TCP port allocation. (735c2c41e)
- Add test-monitor script: Implement deployment and monitoring commands for development environment (a74316ae1)
- Implement reliable two-phase deployment monitoring with internal HTTP status endpoint (a2b49dcd6)
- Improve pod status handling: Exclude 'empty' status from container status checks (6d18e2872)
- Improve pod status handling: Exclude 'empty' status from advanced pod tracking (a90400342)
build-template
- Add option to update private template repository (77cbe276a)
runtime-cyberia
- Refactor Dockerfiles: Standardize comments and clean up unnecessary lines (6ae4d0bef)
engine-cyberia
- Enhance dialogue and quest systems: Add new dialogue entries for Lain, update action types, and revise implementation status in documentation (67702fa9c)
cyberia-cli
- Add Mongo host override option to import command for Object Layer items (b181892b4)
env
- Simplify environment variable check: Remove redundant logging for empty env path (b192cdff4)
New release v:3.2.14 (2026-06-02)
runtime-wp
- Enhance Dockerfile: Add retry logic for XAMPP installation to handle flaky SourceForge transfers (d76f7ec69)
cli-run
- Bundle runner: Enhance client build process by adding options for zip building and replica handling; improve bundle upload logic for deployment (ee79ccfea)
- Add shared-dir command execution to UnderpostRun class (a5d6a3a09)
monitor
- Enhance pod status monitoring by adding advanced error checks and tracking for container status regressions (de54ee20c)
- Refactor deployment monitoring and image management; add tests for deployment failure detection (819d17f30)
github-actions
- Add GITHUB_USERNAME environment variable to CI workflows for better repository management (2f47aaaa1)
- Update CI workflows to use environment-specific configuration files for engine core, cyberia, lampp, prototype, and test (5c94eedf5)
- Add conditional checks to skip commit and push if no changes are detected in CI workflows (033afed27)
- Add npm install step to CI workflows for engine core, cyberia, lampp, prototype, and test (25457022f)
- Add sparse checkout and configuration updates for engine prototype workflows (787cbac2b)
- Add prototype ci cd workflows (147f9c90e)
docs
- Refactor CLI documentation generation in buildCliDoc (fd2ef99ba)
- Update architecture and server documentation (a3eefadd1)
- Refactor documentation for Cyberia and Underpost Platform (36c8234df)
bin-build
- Enhance build process by adding source repo validation and restoration; implement pullSourceRepo method for managing public source repositories (7cf35bcd8)
- Enhance build process by adding template rebuild option and refactoring build template logic; streamline deployment template assembly (eb28b47f3)
- Refactor build main entry logic related to CI workflows and build process for engine components (d1aba687a)
catalog
- Refactor build process and introduce dynamic product catalogs for Cyberia and Prototype; enhance deployment template assembly and configuration syncing (65dc9cc6b)
engine-prototype
- Add deployment and proxy configurations for dd-prototype-development (40549234c)
repository
- Refactor CI workflow and enhance repository management with sparse checkout functionality (27485162d)
engine
- Remove update defualt conf.js per deploy-id workflow (746285d10)
engine-core
- Remove no core src (1a90ce0d7)
underpost
Base template for pwa/api-rest projects.
Underpost Platform
Underpost is an platform for application delivery, from infrastructure to runtime. The underpost npm package is its CLI toolchain surface.
The project covers:
- Bare metal provisioning on Rocky Linux 9.
- Kubernetes / K3s / kubeadm / LXD workflows for production, edge, and isolated workloads.
- GitHub OSS repository flow — clone, pull, push, commit, release, and CI integrations as first-class CLI subcommands.
- CI/CD orchestration — GitHub Actions integrations, container builds, multi-environment deployments.
- Static build + PWA delivery — every deploy ships as an installable Progressive Web App with Workbox-based offline support.
- Cloudinary-backed static asset flow for image/asset delivery.
- ERP/CRM-style PWA base applications as the default workload.
- Cyberia — a dedicated MMO extension built on top of the platform, with its own content backend (
engine-cyberia), authoritative simulation runtime (cyberia-server), and presentation runtime (cyberia-client).
Architectural roles (Cyberia stack)
When the platform is hosting the Cyberia MMO extension, three independent runtime processes participate. Their boundaries are non-overlapping.
| Process | Role |
|---|---|
| engine-cyberia (Node.js) | Content authority: maps, object layers, atlas/asset metadata, world configuration, persistence, validation, gRPC + REST data services, editor backend, asset distribution. |
| cyberia-server (Go) | Authoritative simulation runtime: tick advancement, AOI replication, input command processing, snapshot generation. |
| cyberia-client (C → WebAssembly) | Presentation runtime: rendering, UI, input capture, prediction, reconciliation, interpolation, client-side presentation defaults. |
The ecosystem is playable only when all three are running and healthy. Each service is supervised independently and owns its own monitor/reconnector. If any one is unhealthy, the game enters standby and resumes automatically once all three are healthy again.
See detailed Cyberia architecture.
Create a new project
npm install -g underpostunderpost new app-nameAfter template installation, the server will be running on http://localhost:4001
Usage
cd app-nameBuild client bundle
npm run buildRun dev client server
npm run devUnderpost CLI
underpost ci/cd cli v3.2.22
Usage: underpost [options] [command]
Global options
| Option | Description |
|---|---|
-V, --version |
output the version number |
-h, --help |
display help for command |
Commands
| Command | Description |
|---|---|
new |
Initializes a new Underpost project, service, or configuration. |
client |
Builds client assets, single replicas, and/or syncs environment ports. |
start |
Initiates application servers, build pipelines, or other defined services based on the deployment ID. |
clone |
Clones a specified GitHub repository into the current directory. |
pull |
Pulls the latest changes from a specified GitHub repository. |
cmt |
Manages commits to a GitHub repository, supporting various commit types and options. |
push |
Pushes committed changes from a local repository to a remote GitHub repository. |
env |
Sets environment variables and configurations related to a specific deployment ID. |
static |
Manages static build of page, bundles, and documentation with comprehensive customization options. |
config |
Manages Underpost configurations using various operators. |
root |
Displays the root path of the npm installation. |
ip |
Displays the current public machine IP addresses. |
cluster |
Manages Kubernetes clusters, defaulting to Kind cluster initialization. |
deploy |
Manages application deployments, defaulting to deploying development pods. |
secret |
Manages secrets for various platforms. |
image |
Manages Docker images, including building, saving, and loading into Kubernetes clusters. |
install |
Quickly imports Underpost npm dependencies by copying them. |
db |
Manages database operations with support for MariaDB and MongoDB, including import/export, multi-pod targeting, and Git integration. |
metadata |
Manages cluster metadata operations, including import and export. |
cron |
Manages cron jobs: execute jobs directly or generate and apply K8s CronJob manifests. |
fs |
Manages file storage, defaulting to file upload operations. |
test |
Manages and runs tests, defaulting to the current Underpost default test suite. |
monitor |
Manages health server monitoring for specified deployments. |
ssh |
Manages SSH credentials and sessions for remote access to cluster nodes or services. |
run |
Runs specified scripts using various runners. |
lxd |
Manages LXD virtual machines as K3s nodes (control plane or workers). |
baremetal |
Manages baremetal server operations, including installation, database setup, commissioning, and user management. |
release |
Release orchestrator for building new versions and deploying releases of the Underpost CLI. |