Universal Service Discovery Made Simple

ScoutQuest is a lightweight, fast, and reliable service discovery platform designed for modern microservices architectures. Build, deploy, and scale your services with confidence.

TypeScript
import { ScoutQuestClient } from 'scoutquest-js';

const client = new ScoutQuestClient('http://localhost:8080');

// Register your service
await client.registerService('api-service', 'localhost', 3000, {
  tags: ['api', 'v1'],
  metadata: { version: '1.0.0' }
});

// Discover other services
const instance = await client.discoverService('user-service');

// Make HTTP calls
const users = await client.get('user-service', '/api/users');

Why Choose ScoutQuest?

Built for developers who need reliable service discovery without the complexity

Lightning Fast

Built with Rust for maximum performance. Sub-millisecond response times and minimal resource usage.

Developer Friendly

Simple APIs, comprehensive SDKs for multiple languages, and extensive documentation to get you started quickly.

Production Ready

Health checking, automatic failover, graceful shutdowns, and comprehensive monitoring built-in.

Multi-Language

Native SDKs for JavaScript/TypeScript, Rust, and more. Use ScoutQuest in any tech stack.

Simplified Architecture

No client-side load balancing complexity. The server handles everything and returns ready-to-use service instances.

Easy Deployment

Single binary deployment, Docker support, and simple configuration. Get running in minutes, not hours.

Get Started in Minutes

Follow these simple steps to set up ScoutQuest in your environment

1

Install ScoutQuest Server

# Using Cargo
cargo install scoutquest-server

# Or download binary from GitHub releases
wget https://github.com/RomainDECOSTER/scoutquest/releases/latest/download/scoutquest-server

# Or use Docker
docker run -p 8080:8080 scoutquest/server
2

Start the Server

# Start ScoutQuest server
scoutquest-server

# Server starts on http://localhost:8080
# Dashboard available at http://localhost:8080/dashboard
3

Install SDK

# NPM
npm install scoutquest-js

# Yarn
yarn add scoutquest-js

# PNPM
pnpm add scoutquest-js
# Add to Cargo.toml
[dependencies]
scoutquest-rust = "1.0"
4

Write Your First Service

import { ScoutQuestClient } from 'scoutquest-js';

const client = new ScoutQuestClient('http://localhost:8080');

// Register your service
const instance = await client.registerService(
  'my-service',
  'localhost',
  3000,
  { tags: ['api', 'v1'] }
);

console.log(`Service registered: ${instance.id}`);
use scoutquest_rust::ServiceDiscoveryClient;

#[tokio::main]
async fn main() -> Result<(), Box> {
    let client = ServiceDiscoveryClient::new("http://localhost:8080")?;

    let instance = client.register_service(
        "my-service",
        "localhost",
        3000,
        None
    ).await?;

    println!("Service registered: {}", instance.id);
    Ok(())
}

Examples & Use Cases

Real-world examples to get you started quickly

Express.js Web Service

TypeScript Express

Complete Express.js service with automatic registration, health checks, and service-to-service communication.

Axum Web Service

Rust Axum

High-performance Rust web service with ScoutQuest integration, health monitoring, and automatic discovery.

Client Demos

TypeScript Rust

Interactive demos showing service discovery, registration, and communication patterns in multiple languages.