Skip to main content
Version: 1.4.0

Getting Started

Develop new features for Luniris OS easily thanks to its modular architecture.


How Features Work

Features are lightweight programs that communicate with the Luniris OS main application through a local gRPC API. This architecture enables features to control various system components, including:

  • Eye movement and positioning
  • Bluetooth LE communication
  • Settings storage
  • And much more

Technical Implementation

The gRPC communication uses a UNIX socket file located at: [temp_directory]/features.socket

Socket Path Examples by Language/Framework:

var socketPath = Path.Combine(Path.GetTempPath(), "features.socket");

Supported Development Options

Programming Languages and Frameworks

Thanks to gRPC's wide compatibility, you can develop features using:

  • .NET 8 (C#)
  • NodeJS (Javascript / Typescript)
  • Native binary (wide compatibility)
Important Note

Native binaries must be compiled for the ARM64 platform with static linking.


Feature Structure

Required Manifest Files

Each feature requires two JSON manifest files:

  1. manifest.json

  2. settings.manifest.json

Packaging

Package all feature files, including the manifest files, into a standard ZIP archive.


Building Your Feature

  1. Create a project directory containing:

    • Your source code files
    • The required manifest files
    • Any additional assets
  2. Package your feature into a ZIP file:

    • Your source code files
    • The required manifest files
  3. Install your feature by following the installation guide