@zeroc/ice
    Preparing search index...

    @zeroc/ice

    Ice For JavaScript

    Examples | NPM packages | Documentation | API Reference | Building from source

    The Ice framework provides everything you need to build networked applications, including RPC, pub/sub, server deployment, and more.

    Ice for JavaScript is the JavaScript implementation of the Ice framework, with support for JavaScript and TypeScript.

    // Slice definitions (Greeter.ice)
    
    module VisitorCenter
    {
        /// Represents a simple greeter.
        interface Greeter
        {
            /// Creates a personalized greeting.
            /// @param name The name of the person to greet.
            /// @return The greeting.
            string greet(string name);
        }
    }
    
    // Client application for Node.js (client.ts)

    import { Ice } from "@zeroc/ice";
    import { VisitorCenter } from "./Greeter.js";
    import process from "node:process";

    await using communicator = Ice.initialize(process.argv);

    const greeter = new VisitorCenter.GreeterPrx(communicator, "greeter:tcp -h hello.zeroc.com -p 4061");

    // Retrieve my name
    const name = process.env.USER || process.env.USERNAME || "masked user";

    const greeting = await greeter.greet(name);

    console.log(greeting);

    The JavaScript code uses console.assert statements for debugging. You should configure your production builds to remove such statements. Different module bundlers provide different options, for example: