Commit Graph
17 Commits
Author SHA1 Message Date
ahp 54aa87676d docs(readme): rewrite for a clearer, complete overview
Add badges, a contents list, and a screenshot caption; document every flag in a table, topic-resolution rules, the --since replay window, the publish form, and the adaptive pane layout. Add How it works, History and storage, and Troubleshooting sections, and correct the go install instructions.
2026-10-11 12:34:53 +03:30
ahp 746eeccd5c docs: document packaging and system-wide installation
Describe installing from the Arch and Debian packages, system-wide installs via PREFIX/DESTDIR, the packaging release flow, and add the new directories to the project layout.
2026-10-11 12:20:52 +03:30
ahp e03d6bb195 build(make): add deb and arch targets and a staged install
install now honors DESTDIR and also installs the license and README under DOCDIR, so packagers can stage a filesystem tree. Add deb (runs dpkg-buildpackage, collects the artifacts in dist/) and arch (runs makepkg) targets, plus uninstall. Ignore the Debian and Arch build output.
2026-10-11 12:20:47 +03:30
ahp 764bffac20 build(arch): add an Arch Linux PKGBUILD
Build the v0.1.0 release archive, compile a stripped, CGO-free binary, run the test suite in check(), and install the binary, man page, license, and README. The source checksum is pinned and .SRCINFO is generated.
2026-10-11 12:20:40 +03:30
ahp e6499b50bb build(debian): add a Debian and Ubuntu package definition
Add a debhelper-free debian/ tree so a .deb can be built with the Go toolchain and dpkg-dev alone. debian/rules compiles the binary with -trimpath and the version from debian/changelog, then stages the binary, the lazyntfy(1) man page, the license, and the README. The package Depends on ca-certificates for TLS to the ntfy server.
2026-10-11 12:20:34 +03:30
ahp ee9e130a92 docs: expand the README and add the lazyntfy(1) man page
Document features, installation, usage, key bindings, configuration, history, development, and project layout. Add a complete man page covering options, keys, files, and exit status.
2026-10-11 12:04:54 +03:30
ahp 714b2da0c7 feat(cmd): wire the CLI flags into the TUI
Parse flags, load configuration, restore remembered topics, prime the stream cursor from history, and run the Bubble Tea program.
2026-10-11 12:04:54 +03:30
ahp 8673f1e83a feat(tui): add the lazygit-style three-pane interface
Topics, messages, and message detail in three panes, with filtering, publishing, adding topics, a raw JSON view, history restore, and open-link support.
2026-10-11 12:04:53 +03:30
ahp 97cc150bf7 feat(history): persist topics and messages in SQLite
Store topics, messages, and small UI preferences in $XDG_DATA_HOME/lazyntfy/history.db. Each topic keeps its newest 1000 messages, expired rows are pruned on startup, and credentials are never written. Saves use a single transaction and prune only when a topic is over the cap.
2026-10-11 12:04:53 +03:30
ahp cd19d4c665 feat(ntfy): add the HTTP client, stream manager, and account discovery
Speak the ntfy JSON API directly: subscribe, publish, group topics that share a server and credentials, reconnect with backoff and a since cursor, and list account subscriptions, reservations, and ACL grants.
2026-10-11 12:04:53 +03:30
ahp 387b3c77f3 feat(theme): add the Catppuccin adaptive palette
Expose light/dark adaptive styles for the chrome, following the lipgloss v2 color API.
2026-10-11 12:04:41 +03:30
ahp 45f18ded00 feat(alert): summarize Grafana and Alertmanager payloads
Extract a readable title and severity from webhook bodies and keep the raw JSON available for the raw view.
2026-10-11 12:04:41 +03:30
ahp 67a843b1e0 feat(store): keep an in-memory newest-first message store
Provide a concurrency-safe, per-topic message store with id-based deduplication, delete, clear, and a search predicate.
2026-10-11 12:04:41 +03:30
ahp ae37b98ef8 feat(config): load ntfy client.yml and resolve topic origins
Parse the official ntfy client configuration, apply command-line overrides, and turn short names, host/topic pairs, and absolute URLs into an origin and topic name.
2026-10-11 12:04:41 +03:30
ahp e412819d48 feat(textutil): add width-aware text wrapping and clipping
Wrap, Clip, and Pad plain text to a fixed rune width for the terminal panes.
2026-10-11 12:04:41 +03:30
ahp eaf7766a4d chore: initialize the Go module and repository scaffolding
Add the Go module definition and lockfile, editor and ignore rules, and a Makefile with build, test, vet, install, and man targets. The version is injected at build time with -ldflags.
2026-10-11 12:04:41 +03:30
ahp 2ac73b80f6 Initial commit 2026-10-11 11:57:45 +03:30