Skip to content
This repository was archived by the owner on Apr 10, 2026. It is now read-only.

Commit 8f4cbae

Browse files
chore: add CI/release workflows, update README for v0.1.0
- CI workflow: build + test on push/PR to main - Release workflow: GoReleaser cross-compiles on tag push - GoReleaser config: linux/darwin/windows, amd64/arm64 - README: add config system, help screen, settings editor, release link - CONTRIBUTING.md: setup, build, PR guidelines
1 parent bc55d96 commit 8f4cbae

5 files changed

Lines changed: 121 additions & 2 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
9+
jobs:
10+
build:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/checkout@v4
14+
15+
- uses: actions/setup-go@v5
16+
with:
17+
go-version-file: go.mod
18+
19+
- name: Build
20+
run: go build ./...
21+
22+
- name: Test
23+
run: go test ./...

‎.github/workflows/release.yml‎

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*"
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
release:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v4
16+
with:
17+
fetch-depth: 0
18+
19+
- uses: actions/setup-go@v5
20+
with:
21+
go-version-file: go.mod
22+
23+
- uses: goreleaser/goreleaser-action@v6
24+
with:
25+
version: "~> v2"
26+
args: release --clean
27+
env:
28+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

‎.goreleaser.yml‎

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
version: 2
2+
3+
builds:
4+
- main: ./cmd/cryptstream
5+
binary: cryptstream
6+
env:
7+
- CGO_ENABLED=0
8+
goos:
9+
- linux
10+
- darwin
11+
- windows
12+
goarch:
13+
- amd64
14+
- arm64
15+
16+
archives:
17+
- format: tar.gz
18+
name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
19+
format_overrides:
20+
- goos: windows
21+
format: zip
22+
23+
changelog:
24+
sort: asc
25+
filters:
26+
exclude:
27+
- "^docs:"
28+
- "^chore:"

‎CONTRIBUTING.md‎

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Contributing
2+
3+
## Setup
4+
5+
```bash
6+
git clone https://github.com/moneycaringcoder/cryptstream-tui
7+
cd cryptstream-tui
8+
go mod download
9+
```
10+
11+
## Build & test
12+
13+
```bash
14+
go build ./cmd/cryptstream
15+
go test ./...
16+
```
17+
18+
## Pull requests
19+
20+
- Fork the repo, create a feature branch
21+
- Keep changes focused — one feature or fix per PR
22+
- Make sure `go build ./...` and `go test ./...` pass
23+
- Open a PR against `main`

‎README.md‎

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,22 @@ Live cryptocurrency ticker in your terminal — real-time Binance WebSocket stre
88
- Per-tick heatmap sparklines (green/red per bar)
99
- Watchlist with persistent starred symbols pinned to top
1010
- Gainers/losers filter
11-
- Live search
11+
- Live search by symbol
1212
- Price delta flash on updates (green up, red down)
1313
- Sortable columns (volume, price, change, symbol)
1414
- Responsive layout — columns adapt to terminal width
15+
- In-app settings editor with live theme preview
16+
- Configurable colors, flash duration, sparkline length, and more
17+
- Help screen with grouped keybind reference
1518

1619
## Install
1720

1821
```bash
1922
go install github.com/moneycaringcoder/cryptstream-tui/cmd/cryptstream@latest
2023
```
2124

25+
Or download a pre-built binary from [Releases](https://github.com/moneycaringcoder/cryptstream-tui/releases).
26+
2227
## Run from source
2328

2429
```bash
@@ -37,11 +42,23 @@ go run ./cmd/cryptstream
3742
| `s` | Star/unstar symbol |
3843
| `f` | Cycle filter (all/gainers/losers) |
3944
| `/` | Search symbols |
40-
| `esc` | Clear search |
45+
| `c` | Open settings editor |
46+
| `?` | Toggle help screen |
47+
| `esc` | Clear search / close overlay |
4148
| `q` / `ctrl+c` | Quit |
4249

50+
## Configuration
51+
52+
Settings are stored in `%APPDATA%/cryptstream/config.json` (Windows) or `~/.config/cryptstream/config.json` (Linux/macOS). You can edit them directly or press `c` in the app.
53+
54+
Configurable options include flash duration, sparkline length, sort defaults, filter count, flash threshold, connection URLs, and a full 9-color theme.
55+
4356
## Stack
4457

4558
- [Bubble Tea](https://github.com/charmbracelet/bubbletea) — TUI framework
4659
- [Lip Gloss](https://github.com/charmbracelet/lipgloss) — Styling
4760
- [gorilla/websocket](https://github.com/gorilla/websocket) — WebSocket client
61+
62+
## License
63+
64+
[MIT](LICENSE)

0 commit comments

Comments
 (0)