a7p

A7P ballistic profile format for Dart — encode/decode, MD5-hash-prefixed wire format, field validation, and field constraints (raw wire scale vs. UI display precision).

License Pub Version

Linux Windows Android iOS macOS

CI

Format

A .a7p file is [32-byte MD5 hex string][protobuf-encoded Payload bytes] — the hash is stored as ASCII hex text, not raw binary. See lib/src/a7p_file.dart.

Regenerating the protobuf bindings

Requires protoc (the Protocol Buffers compiler) and the Dart plugin — once per machine:

# Linux
sudo apt-get install -y protobuf-compiler
# macOS
brew install protobuf

dart pub global activate protoc_plugin

Then, after editing proto/profedit.proto:

dart run bin/generate_proto.dart

Testing

dart pub get
dart analyze
dart test

Formatting

dart format lib test bin

License

LGPL-3.0 — see LICENSE.

Libraries

a7p