{{ define "title" }}Search{{ end }} {{ define "content" }}

Search

{{ template "searchBar" . }} {{ template "searchResults" . }}
{{ end }} {{ define "searchBar" }}
{{ template "sortOptionsList" . }}
{{ template "languageFilters" . }}
{{ end }} {{ define "searchResults" }}
{{ range .Repos }}
{{ template "user/fragments/repoCard" (list $ . true) }}
{{ else }}
No repos found.
{{ end }}
{{ template "searchStatistics" . }}
{{if gt .ResultCount .Page.Limit }} {{ template "fragments/pagination" (dict "Page" .Page "TotalCount" .ResultCount "BasePath" "search" "QueryParams" (queryParams "q" .FilterQuery "sort" .SortParam) ) }} {{ end }} {{ end }} {{ define "searchOptionsPanel" }}

Sort by

{{ template "sortOptionsList" . }}

Languages

{{ template "languageFilters" . }}
{{ template "searchStatistics" . }}
{{ end }} {{ define "sortOptionsList" }} {{ $currentQuery := .FilterQuery }} {{ end }} {{ define "languageFilters" }} {{ $commonLanguages := list "Go" "JavaScript" "TypeScript" "Python" "Rust" "OCaml" "Haskell" "C" "C++" "Ruby" "Swift" }}
{{ range $commonLanguages }} {{ $lang := . }} {{ template "languageFilterChip" (dict "Language" $lang "CurrentQuery" $.FilterQuery) }} {{ end }}
{{ end }} {{ define "languageFilterChip" }} {{ $lang := .Language }} {{ $currentQuery := .CurrentQuery }} {{ $langColor := langColor $lang }} {{ $newQuery := queryParams "q" (printf "language:%s %s" $lang $currentQuery) }} {{ template "repo/fragments/colorBall" (dict "color" $langColor) }} {{ $lang }} {{ end }} {{ define "searchStatistics" }} {{ if gt .ResultCount 0 }}
Returned {{ .ResultCount }} of {{ .DocCount }} repos in {{ .TimeTaken }}
{{ end }} {{ end }}