GitHub Hot Board

GitHub Hot Board · Архив репозитория

a-h/templ

A language for writing HTML user interfaces in Go. (Описание взято из самого репозитория.)

Go#go#html-elements#htmx

Данные на October 28a-h

Лучшее место

#423

Мастодонты · Go по языку

11K

Всего звёзд

379

Всего форков

0

Дней в рейтингах (30 дн.)

Лицензия: MITПоследний push: October 27Открытые issues (вкл. PR): 23Собирается с 2026-10-25; неизвестно = ещё не собрано

Документация проекта

templ

An HTML templating language for Go that has great developer tooling.

templ

Documentation

See user documentation at https://templ.guide

Go Reference xc compatible Go Coverage

Tasks

version-set

Set the version of templ to the current version.

version set

build

Build a local version.

version set
cd cmd/templ
go build

install-snapshot

Build and install current version.

# Remove templ from the non-standard ~/bin/templ path
# that this command previously used.
rm -f ~/bin/templ
# Clear LSP logs.
rm -f cmd/templ/lspcmd/*.txt
# Update version.
version set
# Install to $GOPATH/bin or $HOME/go/bin
cd cmd/templ && go install

build-snapshot

Use goreleaser to build the command line binary using goreleaser.

goreleaser build --snapshot --clean

generate

Run templ generate using local version.

go run ./cmd/templ generate -include-version=false

test

Run Go tests.

version set
go run ./cmd/templ generate -include-version=false
go test ./...

test-short

Run Go tests.

version set
go run ./cmd/templ generate -include-version=false
go test ./... -short

test-cover

Run Go tests.

# Create test profile directories.
mkdir -p coverage/fmt
mkdir -p coverage/generate
mkdir -p coverage/version
mkdir -p coverage/unit
# Build the test binary.
go build -cover -o ./coverage/templ-cover ./cmd/templ
# Run the covered generate command.
GOCOVERDIR=coverage/fmt ./coverage/templ-cover fmt .
GOCOVERDIR=coverage/generate ./coverage/templ-cover generate -include-version=false
GOCOVERDIR=coverage/version ./coverage/templ-cover version
# Run the unit tests.
go test -cover ./... -coverpkg ./... -args -test.gocoverdir="$PWD/coverage/unit"
# Display the combined percentage.
go tool covdata percent -i=./coverage/fmt,./coverage/generate,./coverage/version,./coverage/unit
# Generate a text coverage profile for tooling to use.
go tool covdata textfmt -i=./coverage/fmt,./coverage/generate,./coverage/version,./coverage/unit -o coverage.out
# Print total
go tool cover -func coverage.out | grep total

test-cover-watch

gotestsum --watch -- -coverprofile=coverage.out

test-fuzz

Run each fuzz test for FUZZTIME (default 120s).

./parser/v2/fuzz.sh
./parser/v2/goexpression/fuzz.sh
./runtime/fuzzing/fuzz.sh
./internal/jstokenizer/fuzzing/fuzz.sh

test-fuzz-corpus

Run the runtime and JavaScript tokenizer fuzz tests against their seed and committed corpora, without fuzzing. These fuzz tests are in separate modules, so that their JavaScript engine and parser dependencies are not dependencies of templ, and go test ./... in the root module doesn't run them. The parser fuzz tests are in the root module, so test and test-cover run their corpora.

(cd runtime/fuzzing && go test ./...) &&
	(cd internal/jstokenizer/fuzzing && go test ./...)

benchmark

Run benchmarks.

go run ./cmd/templ generate -include-version=false && go test ./... -bench=. -benchmem

benchmark-fmt

Run the templ fmt benchmarks, which include the time taken by prettier.

go test ./internal/format -run '^$' -bench BenchmarkTempl -benchtime 3x

fmt

Format all Go and templ code.

gofmt -s -w .
go run ./cmd/templ fmt .

lint

Run the lint operations that are run as part of the CI.

golangci-lint run --verbose

vulncheck

Check for known vulnerabilities in dependencies that templ calls.

govulncheck ./...

ensure-generated

Ensure that templ files have been generated with the local version of templ, and that those files have been added to git.

Requires: generate

git diff --exit-code

push-release-tag

Push a semantic version number to GitHub to trigger the release process.

version push --prefix="v"

docs-run

Run the development server.

Directory: docs

npm run start

docs-build

Build production docs site.

Directory: docs

npm run build

Текущие места

Динамика за 30 дней

Нет записей за последние 30 дней.

Поставьте бейдж в свой README · a-h/templ[![Поставьте бейдж в свой README](https://git.vaiox.xyz/api/badge/a-h/templ.svg)](https://git.vaiox.xyz/ru/repo/a-h/templ)

Badge · 任何仓库都可以挂 —— 未上榜的仓库显示灰章,上完榜会自动点亮。

<a href="https://git.vaiox.xyz/ru/repo/a-h/templ"><img src="https://git.vaiox.xyz/api/badge/a-h/templ.svg" alt="Поставьте бейдж в свой README" height="20"></a>

← К рейтингам

GitHub Hot BoardМашина времениОбзор联系我们 · Contact