npm.io
3.2.30 • Published 3d agoCLI

underpost

Licence
MIT
Version
3.2.30
Deps
69
Size
6.6 MB
Vulns
0
Weekly
387
Install scriptsThis package runs scripts during installation (preinstall/install/postinstall)

underpost engine core server

underpost

rockylinux npm nodedotjs mongodb

Node.js CI Test Downloads Socket Badge Coverage Status Version License

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).

See Detailed platform doc.

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 underpost
underpost new app-name

After template installation, the server will be running on http://localhost:4001

Usage

cd app-name

Build client bundle

npm run build

Run dev client server

npm run dev

See Docs.

Underpost CLI

underpost ci/cd cli v3.2.30

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.
docker-compose General-purpose Docker Compose development pipeline (mirrors the Kubernetes dev stack).
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.

See CLI Docs.

Keywords