Skip to content

Commit

Permalink
Add ARCHITECTURE.md
Browse files Browse the repository at this point in the history
  • Loading branch information
byronwasti committed Apr 1, 2024
1 parent 9fc6a4b commit 6a1d25f
Showing 1 changed file with 36 additions and 0 deletions.
36 changes: 36 additions & 0 deletions ARCHITECTURE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Architecture

## Directory Overview

Code:

- `balter`
- The primary logic for Balter. Includes all scenario running code, transaction hooks, controllers, etc. Default spot to look for code.
- `balter-runtime`
- All logic related to the distributed functionality of Balter. Includes the Runtime, gossip protocol and anything else of this nature.
- `balter-core`
- Shared primitives. Primarily just basic structs and definitions.
- `balter-macros`
- Procedural macros for Balter, specifically `#[scenario]` and `#[transaction]`

Testing:

- `tests`
- Integration tests for Balter. See README under developer notes for how to run.
- `benchmark`
- WIP benchmarking suite for performance testing Balter.
- `mock-service`
- A mock service to run Balter against. It exposes various APIs which trigger different balter behavior (error rates, latency, etc.)

Miscellaneous

- `examples`
- WIP examples for various ways to use Balter.
- `shell.nix`
- Nix support for all dependencies
- `Justfile`
- Similar to Make, just a command runner
- `dashboards`
- Grafana dashboard definitions for the integration tests to make debugging controller logic easier.
- `prometheus.yml`
- Prometheus configuration for integration test suites

0 comments on commit 6a1d25f

Please sign in to comment.