49 lines
1.3 KiB
Markdown
49 lines
1.3 KiB
Markdown
# AGENTS
|
|
|
|
This document provides context for AI agents working on this codebase.
|
|
|
|
## Project Overview
|
|
|
|
HAMView is an online Amateur Radio digital protocol live viewer. It features:
|
|
- Displaying online radio receivers in near real-time
|
|
- Streaming of popular Amateur Radio protocols such as APRS, MeshCore, etc.
|
|
- A live packet stream for each of the protocols
|
|
- Packet inspection
|
|
|
|
## Tech Stack
|
|
|
|
Used technologies:
|
|
- **Framework**: Go with echo 4
|
|
- **Logging**: logrus
|
|
- **Code Editor**: Visual Studio Code
|
|
- **Backend**: Xorm on PostgreSQL with PostGIS extensions
|
|
- **Broker**: Mosquitto broker
|
|
- **Testing**: use `go test -v`
|
|
|
|
## Testing Requirements
|
|
|
|
**Always run tests before completing a task.**
|
|
|
|
Run `go test -v` and `golangci-lint run`.
|
|
|
|
## Coding Guidelines
|
|
|
|
### General
|
|
- Use builtins from Go, echo and the libraries from `go.mod` where possible
|
|
- Follow existing code patterns in the code base
|
|
- Don't add new imports unless necessary
|
|
|
|
### Styling
|
|
- Use Go builtins where appropriate
|
|
- Order imports with `goimports`
|
|
|
|
## Protected files
|
|
|
|
Never add secrets to code, unless a secret is used as a test vector. In that case, ask
|
|
for confirmation before adding or changing.
|
|
|
|
## Addressing
|
|
|
|
Don't call me "the user", refer to me as "the developer".
|
|
Refrain from using hyperbolic expressions like "excellent" and "perfect", "ok" or "good" is good enough.
|