All checks were successful
CI / build (push) Successful in 1m25s
- Update manifesto links to use absolute Gitea URLs Co-Authored-By: Claude <noreply@anthropic.com>
38 lines
1.4 KiB
Markdown
38 lines
1.4 KiB
Markdown
# Aether Vision
|
|
|
|
Distributed actor system with event sourcing for Go, powered by NATS.
|
|
|
|
## Organization Context
|
|
|
|
This repo is part of Flowmade. See [organization manifesto](https://git.flowmade.one/flowmade-one/architecture/src/branch/main/manifesto.md) for who we are and what we believe.
|
|
|
|
## What This Is
|
|
|
|
Aether is an open-source infrastructure library for building distributed, event-sourced systems in Go. It provides:
|
|
|
|
- **Event sourcing primitives** - Event, EventStore interface, snapshots
|
|
- **Event stores** - In-memory (testing) and JetStream (production)
|
|
- **Event bus** - Local and NATS-backed pub/sub with namespace isolation
|
|
- **Cluster management** - Node discovery, leader election, shard distribution
|
|
- **Namespace isolation** - Logical boundaries for multi-scope deployments
|
|
|
|
## Who This Serves
|
|
|
|
- **Go developers** building distributed systems
|
|
- **Teams** implementing event sourcing and CQRS patterns
|
|
- **Projects** needing actor-based concurrency with event persistence
|
|
|
|
## Goals
|
|
|
|
1. **Simple event sourcing** - Clear primitives that compose well
|
|
2. **NATS-native** - Built for JetStream, not bolted on
|
|
3. **Horizontal scaling** - Consistent hashing, shard migration, leader election
|
|
4. **Namespace isolation** - Logical boundaries without infrastructure overhead
|
|
|
|
## Non-Goals
|
|
|
|
- Opinionated multi-tenancy (product layer concern)
|
|
- Domain-specific abstractions (use the primitives)
|
|
- GraphQL/REST API generation (build on top)
|
|
- UI components (see iris)
|