Logo

Welcome to Ninja

Ninja is a modern service management system built around Shurikens: self-contained service packages with metadata, lifecycle scripts, templates, and optional tools.

Quick Navigation

What is a Shuriken?

A shuriken is a packaged service distributed as a .shuriken file containing:

  • Metadata - Name, version, platform, and description
  • Management - Start/stop logic (script or native binary)
  • Configuration - Templates and user options
  • Tools - Optional executable scripts
  • Lifecycle hooks - Post-install and other scripts

Key Features

  • Cross-platform - Linux, macOS, and Windows support
  • Flexible management - Script-based or native binary control
  • Template-based config - Tera templates with user options
  • Process safety - PID + start time verification
  • Scriptable - Lua API and DSL for automation

Start with the Quickstart Guide for a practical example, then read the Architecture Guide for the system layout.

On this page