infra

command module
v1.0.1-0...-a4f66ab Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 31, 2025 License: Apache-2.0 Imports: 2 Imported by: 0

README ΒΆ

Infrastructure Management System

GitHub

A self-similar infrastructure management system that bridges development and production with identical workflows.

πŸš€ Quick Start

git clone https://github.com/joeblew999/infra.git
cd infra
go run .                    # Start all services

Access the web interface at http://localhost:1337

Environment Modes
go run . --env dev          # Development mode
go run . --env production   # Production mode (default)

🌐 Endpoints

Endpoint Description
http://localhost:1337/ Main dashboard with NATS β†’ DataStar demo
http://localhost:1337/docs/ Documentation
http://localhost:1337/logs System logs
http://localhost:1337/metrics Metrics
http://localhost:1337/status Status

πŸ”§ Development

CLI Tools (Always Available)

All debugging and provisioning tools are always available:

go run . --help               # Show all commands
go run . dep list             # Manage dependencies
go run . task                # Run Taskfiles
go run . build               # Build application
Web GUI Debugging

Use Claude Code's built-in Playwright tools:

mcp__playwright__browser_navigate β†’ http://localhost:1337
mcp__playwright__browser_click β†’ click buttons
mcp__playwright__browser_type β†’ input text
mcp__playwright__browser_evaluate β†’ check DOM state
mcp__playwright__browser_console_messages β†’ debug errors
Architecture

Self-Similar Design: The same patterns work at development time and runtime.

  • Unified Interface: go run . - starts all services automatically
  • Always Available: All CLI tools accessible without mode switching
  • No mental model shift between dev and prod

Key Features:

  • βœ… NATS JetStream for real-time messaging and logging
  • βœ… Multi-destination logging (stdout, files, NATS)
  • βœ… Runtime configuration without restart
  • βœ… Idempotent workflows across environments
  • βœ… Cross-platform (laptop, CI, CD, production)

πŸ”„ Workflows

Local Development
go run .                    # Always starts all services
go run . --env dev          # Development mode with migration tools
go run . --env production   # Production mode (optimized)
CI/CD
  • GitHub Actions: All IAC based, so DRY, with github actions being close to empty.
  • Terraform: Provisions infrastructure via workflows as IAC.
  • Versioned: Use git hashes/tags for reproducible builds
Multi-Environment
  • Laptop: Direct binary execution
  • CI: Same binaries via GitHub Actions
  • CD: Same binaries via Terraform
  • Production: Same binaries via orchestration

πŸ€– AI Integration

Built for Claude CLI and Gemini CLI:

  • Lightweight CLI tools instead of heavy IDE extensions
  • Direct binary execution for AI workflows
  • MCP server support available
  • No VS Code slowdown

πŸ“¦ Dependencies

Manage via ./pkg/dep/ - extend by juast matching hte dep.json from any pkg.

🌍 Deployment

Primary

Hetzner Cloud (Germany) - European coverage

Secondary

Fl.io Cloud - Global coverage

  • 6 NATS Servers protected internally.
  • 22 regions, with autoscaling in each.

πŸ“Š Monitoring

  • NATS JetStream for event streaming
  • Multi-destination logging for observability
  • Real-time web interface for monitoring
  • Self-reflection via NATS event publishing

Documentation ΒΆ

The Go Gopher

There is no documentation for this package.

Directories ΒΆ

Path Synopsis
core
controller module
pkg
ai
cmd
conduit
Package conduit provides functionality for downloading and managing Conduit binaries.
Package conduit provides functionality for downloading and managing Conduit binaries.
dep
Package dep provides a design-by-contract binary dependency management system.
Package dep provides a design-by-contract binary dependency management system.
dep/config
Package config provides cross-platform binary naming utilities and configuration for the dep package.
Package config provides cross-platform binary naming utilities and configuration for the dep package.
fly
log
mjml
Package mjml provides email template rendering using MJML (Mailjet Markup Language) for generating responsive HTML emails at runtime.
Package mjml provides email template rendering using MJML (Mailjet Markup Language) for generating responsive HTML emails at runtime.
deck/wasm module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL