Skip to content

Commit 23865a4

Browse files
author
andreas.ertel
committed
Initial commit: EEBus protocol trace recorder and analyzer
Cross-platform tool for capturing, decoding, and analyzing EEBus SHIP/SPINE communication. Includes UDP/TCP/log tail capture, web UI with message inspection, charts, protocol intelligence, and mDNS device discovery.
0 parents  commit 23865a4

123 files changed

Lines changed: 23073 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
lint:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- uses: actions/checkout@v4
17+
- uses: actions/setup-go@v5
18+
with:
19+
go-version: "1.24"
20+
- uses: golangci/golangci-lint-action@v7
21+
with:
22+
version: v2.1.6
23+
24+
test:
25+
runs-on: ubuntu-latest
26+
steps:
27+
- uses: actions/checkout@v4
28+
- uses: actions/setup-go@v5
29+
with:
30+
go-version: "1.24"
31+
- run: go test -race ./...
32+
33+
build:
34+
needs: [lint, test]
35+
runs-on: ubuntu-latest
36+
strategy:
37+
matrix:
38+
include:
39+
- goos: linux
40+
goarch: amd64
41+
- goos: linux
42+
goarch: arm64
43+
- goos: darwin
44+
goarch: amd64
45+
- goos: darwin
46+
goarch: arm64
47+
- goos: windows
48+
goarch: amd64
49+
- goos: windows
50+
goarch: arm64
51+
env:
52+
CGO_ENABLED: "0"
53+
steps:
54+
- uses: actions/checkout@v4
55+
- uses: actions/setup-go@v5
56+
with:
57+
go-version: "1.24"
58+
- name: Build
59+
env:
60+
GOOS: ${{ matrix.goos }}
61+
GOARCH: ${{ matrix.goarch }}
62+
run: |
63+
EXT=""
64+
if [ "$GOOS" = "windows" ]; then EXT=".exe"; fi
65+
VERSION="${GITHUB_REF_NAME:-$GITHUB_SHA}"
66+
go build -ldflags "-s -w -X main.Version=${VERSION}" \
67+
-o "eebustracer-${GOOS}-${GOARCH}${EXT}" ./cmd/eebustracer
68+
- uses: actions/upload-artifact@v4
69+
with:
70+
name: eebustracer-${{ matrix.goos }}-${{ matrix.goarch }}
71+
path: eebustracer-*
72+
retention-days: 30

.gitignore

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Binaries
2+
eebustracer
3+
*.exe
4+
*.exe~
5+
*.dll
6+
*.so
7+
*.dylib
8+
9+
# Test binary
10+
*.test
11+
12+
# Output
13+
*.out
14+
*.prof
15+
16+
# Database
17+
*.db
18+
*.db-journal
19+
*.db-wal
20+
*.db-shm
21+
22+
# IDE
23+
.idea/
24+
.vscode/
25+
*.swp
26+
*.swo
27+
*~
28+
29+
# OS
30+
.DS_Store
31+
Thumbs.db
32+
33+
# Claude
34+
.claude/
35+
CLAUDE.md
36+
37+
# Build
38+
dist/
39+
40+
# Example trace/log files (keep the directory, ignore user data)
41+
examples/*
42+
!examples/README.md

.golangci.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
run:
2+
timeout: 5m
3+
4+
linters:
5+
enable:
6+
- errcheck
7+
- govet
8+
- ineffassign
9+
- staticcheck
10+
- unused
11+
- gosimple
12+
- gocritic
13+
- revive
14+
- misspell
15+
16+
linters-settings:
17+
revive:
18+
rules:
19+
- name: exported
20+
disabled: true
21+
gocritic:
22+
enabled-tags:
23+
- diagnostic
24+
- style
25+
disabled-checks:
26+
- ifElseChain
27+
- hugeParam
28+
29+
issues:
30+
exclude-use-default: true
31+
max-issues-per-linter: 50
32+
max-same-issues: 5

0 commit comments

Comments
 (0)