Catalog Service
Central registry for all sim2l tools, versions, and executions.
Quick Start
# Start service
python -m sim2l.services.catalog_service --backend sqlite --port 8002
from sim2l.database import CatalogClient, get_session_manager
session = get_session_manager().create_anonymous_session(privileges=['developer'])
catalog = CatalogClient("http://localhost:8002", session_id=session.session_id)
# Register simulation
catalog.register_simulation(
name="thermal_sim",
version="1.0.0",
description="Thermal stress analysis",
tags=["thermal", "physics"],
schema={"inputs": {...}, "outputs": {...}}
)
# Search
results = catalog.search(query="thermal", tags=["physics"])
# Get statistics
stats = catalog.get_simulation_stats(simulation_id)
REST API
GET /simulations/search- Search simulationsGET /simulations/{name}- Get simulation infoPOST /simulations- Register simulationPOST /executions- Record executionGET /simulations/{id}/stats- Get statisticsGET /health- Health check