A minimal email TUI where you read with Markdown and write in Neovim. neomd.ssp.sh/docs
email markdown neovim tui
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

add release

sspaeti f9a482e5 b5f206bb

+106 -7
+28
.github/workflows/release.yml
··· 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 # full history for changelog 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: latest 26 + args: release --clean 27 + env: 28 + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+41
.goreleaser.yml
··· 1 + version: 2 2 + 3 + project_name: neomd 4 + 5 + before: 6 + hooks: 7 + - go mod tidy 8 + 9 + builds: 10 + - main: ./cmd/neomd 11 + binary: neomd 12 + ldflags: 13 + - -X main.version={{.Version}} 14 + env: 15 + - CGO_ENABLED=0 16 + goos: 17 + - linux 18 + - darwin 19 + goarch: 20 + - amd64 21 + - arm64 22 + 23 + archives: 24 + - formats: [tar.gz] 25 + name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}" 26 + files: 27 + - LICENSE 28 + - README.md 29 + 30 + checksum: 31 + name_template: "checksums.txt" 32 + 33 + changelog: 34 + sort: asc 35 + filters: 36 + exclude: 37 + - "^docs:" 38 + - "^test:" 39 + - "^chore:" 40 + - Merge pull request 41 + - Merge branch
+21
LICENSE
··· 1 + MIT License 2 + 3 + Copyright (c) 2025 Simon Späti 4 + 5 + Permission is hereby granted, free of charge, to any person obtaining a copy 6 + of this software and associated documentation files (the "Software"), to deal 7 + in the Software without restriction, including without limitation the rights 8 + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 + copies of the Software, and to permit persons to whom the Software is 10 + furnished to do so, subject to the following conditions: 11 + 12 + The above copyright notice and this permission notice shall be included in all 13 + copies or substantial portions of the Software. 14 + 15 + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 + SOFTWARE.
+16 -7
Makefile
··· 1 1 BINARY := neomd 2 2 CMD := ./cmd/neomd 3 3 INSTALL := $(HOME)/.local/bin 4 + VERSION := $(shell git describe --tags --always --dirty 2>/dev/null || echo "dev") 5 + LDFLAGS := -ldflags "-X main.version=$(VERSION)" 4 6 5 - .PHONY: build run install clean test vet fmt lint tidy 7 + .PHONY: build run install clean test vet fmt tidy release help 6 8 7 - ## build: compile the binary into ./neomd 9 + ## build: compile ./neomd (version from git tag) 8 10 build: 9 - go build -o $(BINARY) $(CMD) 11 + go build $(LDFLAGS) -o $(BINARY) $(CMD) 10 12 11 - ## run: build and run (pass ARGS="--config /path/to/config.toml" to override) 13 + ## run: build and run 12 14 run: build 13 15 ./$(BINARY) $(ARGS) 14 16 15 - ## install: install the binary to ~/.local/bin 17 + ## install: install to ~/.local/bin 16 18 install: build 17 19 install -Dm755 $(BINARY) $(INSTALL)/$(BINARY) 18 20 @echo "Installed to $(INSTALL)/$(BINARY)" ··· 33 35 tidy: 34 36 go mod tidy 35 37 36 - ## clean: remove the compiled binary 38 + ## clean: remove compiled binary 37 39 clean: 38 40 rm -f $(BINARY) 39 41 40 - ## help: print this help 42 + ## release: tag and push a new release (usage: make release VERSION=v0.1.0) 43 + release: 44 + @test -n "$(VERSION)" || (echo "Usage: make release VERSION=v0.1.0" && exit 1) 45 + git tag -a $(VERSION) -m "Release $(VERSION)" 46 + git push origin $(VERSION) 47 + @echo "Tagged $(VERSION) — GitHub Actions will build and publish the release." 48 + 49 + ## help: print this list 41 50 help: 42 51 @grep -E '^## ' Makefile | sed 's/^## //'