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.
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
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
Start the Server
# Start ScoutQuest server
scoutquest-server
# Server starts on http://localhost:8080
# Dashboard available at http://localhost:8080/dashboard
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"
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
Complete Express.js service with automatic registration, health checks, and service-to-service communication.
Axum Web Service
High-performance Rust web service with ScoutQuest integration, health monitoring, and automatic discovery.
Client Demos
Interactive demos showing service discovery, registration, and communication patterns in multiple languages.
Documentation
Everything you need to know about ScoutQuest
SDK Documentation
- JavaScript/TypeScript SDK
- Rust SDK
- REST API Reference
- WebSocket Events (Coming Soon)