TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: Nebula – A DSL for scripting TestContainers-based demos

2 pointsby martypitt3 months ago
Hey HN,<p>I&#x27;m Marty, founder of Orbital[0]—a semantic data integration platform.<p>As we&#x27;ve been demo&#x27;ing Orbital to people, we kept hitting a common challenge: when people evaluate Orbital, they need a demo to play with. But since Orbital is all about integration, those demos need real data sources—Kafka topics, S3 buckets, SQL databases, microservices, etc.—that actually do stuff: emit messages, respond to API calls, and contain data.<p>Historically, we shipped demos as a mix of Docker Compose files and Spring Boot microservices (for the &quot;doing stuff&quot; part). But that was painful—Spring Boot services had to be dockerized and deployed somewhere, and code got messy.<p>So we built Nebula[1] to fix this. It’s a simple DSL where you declare the Docker images you need, then write Kotlin code to script them—all in a single file.<p>Nebula itself runs as a standalone Docker image. At runtime, it takes in the script, pulls and starts the required Docker images, then executes the Kotlin code you&#x27;ve written. The docker parts are handled by the awesome TestContainers, and scripting by Kotlin. Since it&#x27;s just Kotlin, you can write whatever you need—we&#x27;ve even simulated full food delivery systems inside Nebula scripts.<p>We split it into its own repo under Apache 2. It&#x27;s simple but surprisingly powerful (and kinda fun) for quickly hacking together demo ecosystems.<p>Thought I&#x27;d share!<p>[0]: Orbital - <a href="https:&#x2F;&#x2F;github.com&#x2F;orbitalapi&#x2F;orbital">https:&#x2F;&#x2F;github.com&#x2F;orbitalapi&#x2F;orbital</a><p>[1]: Nebula - <a href="https:&#x2F;&#x2F;github.com&#x2F;orbitalapi&#x2F;nebula">https:&#x2F;&#x2F;github.com&#x2F;orbitalapi&#x2F;nebula</a>

no comments

no comments