nodefony-start-server

Starts and stops the Nodefony development server for integration testing via wrapper scripts.

Updated Dec 19, 2023
One-click install
npx skills add https://github.com/nodefony/nodefony-core --skill nodefony-start-server-nodefony
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: nodefony-start-server
Source: https://github.com/nodefony/nodefony-core/tree/main/.claude/skills/nodefony-start-server
Command: npx skills add https://github.com/nodefony/nodefony-core --skill nodefony-start-server-nodefony

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Starting a Nodefony server for integration tests previously required around eight manual Bash commands, each potentially needing approval, and was prone to stale builds, orphaned processes, and port conflicts. This Skill consolidates the entire lifecycle into one command that handles cleanup, conditional builds, detached spawning, readiness checks, and health verification. ## Core Features & Use Cases - One-command startup: start.sh kills residual processes, frees ports 5151/5152, conditionally rebuilds the test module, spawns the DevSupervisor detached, waits for boot with fail-fast logic, and runs a health check. - Native status and stop commands: nodefony status inspects the dev process tree (supervisor, server, Vite) with PID, uptime, and ports; nodefony stop performs a clean group-kill scoped strictly to the current project so neighboring projects are never touched. - Multiple runtime modes: default development mode with auto-restart, --cluster -w N for multi-process production-like testing, --no-watch for stable test runs, and NF_WITH_DEV_MODULES=1 for benchmarking production with test routes enabled. - Use Case: Before running npm run test:integration, an agent executes bash .claude/skills/nodefony-start-server/start.sh and gets an exit code 0 only when the server is verified UP, with logs at /tmp/nodefony-server.log. ## Quick Start Ask the AI to launch the Nodefony development server using the start.sh script in this skill and confirm it reports UP before running integration tests.

Frequently Asked Questions about nodefony-start-server

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I start the Nodefony server for integration tests?

Run bash .claude/skills/nodefony-start-server/start.sh from anywhere. It kills residual processes, conditionally builds the test module, spawns the DevSupervisor detached, waits for boot, and health-checks the server. Exit code 0 means the server is UP.

How do I stop a running Nodefony dev server cleanly?

Use bash .claude/skills/nodefony-start-server/stop.sh or node node_modules/nodefony/bin/nodefony stop. Both group-kill the supervisor, child server, and Vite processes scoped strictly to the current project, then wait for ports to free.

Why do integration tests return 404 on /nodefony/test routes?

A 404 on test routes means the test module dist is stale or the server runs in production mode without dev modules. Rebuild with start.sh --force-build, or set NF_WITH_DEV_MODULES=1 when testing a production runtime.

Can I run Nodefony in cluster mode for multi-process testing?

Yes, run start.sh --cluster -w N to launch the production cluster runtime with N workers (default 2). This serves the compiled frontend without Vite and exposes pod-view observability at /nodefony/realtime/api/health.

Why does start.sh refuse to kill a process on port 5151?

The script only kills processes whose working directory is exactly this repository. If another project or a nested app occupies the port, it exits with code 73 and asks you to stop that runtime from its own directory.

When should I use nodefony development --no-watch?

Use --no-watch when running a test suite against a live server. It boots the dev server without the supervisor, file watching, or auto-restart, preventing reloads from cutting connections mid-test.