Help us shape the future of Go! Take the 2026 Go Developer Survey

go-aether

command module
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Aug 6, 2026 License: MIT Imports: 9 Imported by: 0

README ΒΆ

πŸš€ go-aether

Lightning-fast, Zero-Runtime Dependency, Opinionated Architecture Scaffold CLI Engine for Go.

Build Status Go Version Release License


go-aether is an advanced developer tool designed for Go Backend Engineers. It eliminates the repetitive boilerplate of setting up Hexagonal (Ports & Adapters) architectures by scaffolding clean, structurally sound, and production-ready modules in milliseconds.

Unlike heavy web frameworks, go-aether is strictly a Dev-Time CLI. It embeds standard text/template files into a single binary, meaning the generated code uses pure Go standard libraries and your chosen dependencies (like chi or pgx) with absolute zero runtime lock-in to go-aether itself.

✨ Features

  • πŸ—οΈ Hexagonal Architecture Native: Enforces Domain, Port, Service, and Adapter layer isolation automatically.
  • ⚑ Zero Runtime Bloat: Generated code belongs to you. No hidden framework dependencies.
  • πŸ“¦ Vertical Slice Scaffolding: Generate a full feature (Domain entity, interface contracts, service use-cases, HTTP handlers, and Postgres repos) with a single command.
  • πŸ›‘οΈ Transactional Disk Buffer: If a file generation fails midway, the CLI rolls back all writes automatically to prevent a corrupted Git tree.
  • 🩺 Aether Doctor: Built-in structural diagnostics to ensure your project's integrity hasn't drifted from the manifest.

πŸš€ Installation

Install the latest version seamlessly via the Go toolchain:

go install github.com/muhananaufal/go-aether@latest

(Ensure $(go env GOPATH)/bin is appended to your $PATH)

πŸ“– Quick Start

1. Initialize a New Greenfield Project

Run init to bootstrap your base architecture directory and generate the Single Source of Truth manifest (aether.yaml).

mkdir my-enterprise-api
cd my-enterprise-api

# Bootstrap Hexagonal Architecture (defaults to chi router & postgres)
go-aether init my-enterprise-api

2. Scaffold a Vertical Module

Generate a complete feature slice (e.g., user or order). go-aether handles the wiring of Domain logic, Interface Ports, Service Orchestrators, HTTP Handlers, and DB Repositories.

go-aether make:module order --transports http

3. Verify Structural Health

Run the built-in diagnostic tool to validate your project's compliance against the aether.yaml schema.

go-aether doctor

πŸ“‚ Generated Architecture Layout

When you scaffold a module (e.g., order), go-aether injects the code into the strict Hexagonal layers:

my-enterprise-api/
β”œβ”€β”€ aether.yaml                     <-- Project Single Source of Truth
└── internal/
    β”œβ”€β”€ core/                       <-- Inner Layer (Independent)
    β”‚   β”œβ”€β”€ domain/
    β”‚   β”‚   └── order.go            <-- Pure Domain Entities & Validation
    β”‚   β”œβ”€β”€ port/
    β”‚   β”‚   └── order_port.go       <-- Inbound & Outbound Interfaces
    β”‚   └── service/
    β”‚       └── order_service.go    <-- Business Logic & Orchestration
    └── adapter/                    <-- Outer Layer (Dependencies)
        β”œβ”€β”€ handler/http/
        β”‚   └── order_handler.go    <-- HTTP Transport Controller
        └── repository/
            └── order_repository.go <-- DB Persistence Implementation

πŸ› οΈ Commands Reference

Command Description Example
init Bootstraps a new repository layout and manifests. go-aether init api
make:module Generates a full domain slice across all layers. go-aether make:module payment
doctor Runs structural diagnostics and schema validation. go-aether doctor
adopt Adopts an existing legacy project into aether. go-aether adopt --scan

Global Flags

  • --dry-run: Simulates the command without actually writing files to the disk.
  • -v, --verbose: Enables verbose debug logging.

🀝 Contributing

We welcome contributions! Please feel free to submit a Pull Request or open an Issue to discuss potential changes. All tests must pass in the CI/CD pipeline before merging.

πŸ“œ License

This project is licensed under the MIT License Β© 2026 muhananaufal.


Built with precision for Go Artisans by AETHERIS.

Documentation ΒΆ

The Go Gopher

There is no documentation for this package.

Directories ΒΆ

Path Synopsis
internal

Jump to

Keyboard shortcuts

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