@@ -13,46 +13,64 @@ layout: layouts/base.njk
1313</section >
1414
1515<section class =" cards mt-12" >
16- <filter-container >
17- <form class =" pb-4" >
18- <div class =" pb-2" >
19- <strong class =" pr-4" >Filter</strong >
20- <span data-filter-results ></span >
16+ <sort-container >
17+ <filter-container >
18+ <form class =" pb-4" >
19+ <div class =" flex flex-wrap" >
20+ <div >
21+ <div class =" pb-2" >
22+ <strong class =" pr-4" >Filter</strong >
23+ <span data-filter-results ></span >
24+ </div >
25+ <label class =" inline-flex pr-4 pb-2" >
26+ <span class =" sr-only" >Language</span >
27+ <select data-filter-bind =" language" data-filter-delimiter =" ," class =" text-white py-1 px-2 rounded-default border border-white bg-transparent" >
28+ <option selected value =" " >All Languages</option >
29+ {%- for language in collections .generators | select (" data.language" ) | flatten | unique | sort (false , false ) %}
30+ <option value =" {{ language | lower }}" >{{ language }} </option >
31+ {%- endfor %}
32+ </select >
33+ </label >
34+ <label class =" inline-flex pr-4 pb-2" >
35+ <span class =" sr-only" >Template</span >
36+ <select data-filter-bind =" template" data-filter-delimiter =" ," class =" text-white py-1 px-2 rounded-default border border-white bg-transparent" >
37+ <option selected value =" " >All Templates</option >
38+ {%- for template in collections .generators | select (" data.templates" ) | flatten | unique | sort (false , false ) %}
39+ <option value =" {{ template | lower }}" >{{ template }} </option >
40+ {%- endfor %}
41+ </select >
42+ </label >
43+ <label class =" inline-flex pr-4 pb-2" >
44+ <span class =" sr-only" >License</span >
45+ <select data-filter-bind =" license" data-filter-delimiter =" ," class =" text-white py-1 px-2 rounded-default border border-white bg-transparent" >
46+ <option selected value =" " >All Licenses</option >
47+ {%- for license in collections .generators | select (" data.license" ) | flatten | unique | sort (false , false ) %}
48+ <option value =" {{ license | lower }}" >{{ license }} </option >
49+ {%- endfor %}
50+ </select >
51+ </label >
52+ </div >
53+ <div >
54+ <div class =" pb-2" >
55+ <strong class =" pr-4" >Sort</strong >
56+ </div >
57+ <label class =" inline-flex pr-4 pb-2" >
58+ <span class =" sr-only" >Sort by</span >
59+ <select data-sort class =" text-white py-1 px-2 rounded-default border border-white bg-transparent" >
60+ <option selected value =" githubstars-numeric-descending" >GitHub Stars</option >
61+ <option value =" name" >Name</option >
62+ </select >
63+ </label >
64+ </div >
65+ </div >
66+ </form >
67+ <div class =" grid gap-4 grid-cols-1 md:grid-cols-2 lg:grid-cols-3" data-sort-children >
68+ {% for item in collections .generators | sortTools (github ) %}
69+ {{ cards .repo (item , loop .index0 , github ) }}
70+ {% endfor %}
2171 </div >
22- <label class =" inline-flex pr-4 pb-2" >
23- <span class =" sr-only" >Language</span >
24- <select data-filter-bind =" language" data-filter-delimiter =" ," class =" text-white py-1 px-2 rounded-default border border-white bg-transparent" >
25- <option selected value =" " >All Languages</option >
26- {%- for language in collections .generators | select (" data.language" ) | flatten | unique | sort (false , false ) %}
27- <option value =" {{ language | lower }}" >{{ language }} </option >
28- {%- endfor %}
29- </select >
30- </label >
31- <label class =" inline-flex pr-4 pb-2" >
32- <span class =" sr-only" >Template</span >
33- <select data-filter-bind =" template" data-filter-delimiter =" ," class =" text-white py-1 px-2 rounded-default border border-white bg-transparent" >
34- <option selected value =" " >All Templates</option >
35- {%- for template in collections .generators | select (" data.templates" ) | flatten | unique | sort (false , false ) %}
36- <option value =" {{ template | lower }}" >{{ template }} </option >
37- {%- endfor %}
38- </select >
39- </label >
40- <label class =" inline-flex pr-4 pb-2" >
41- <span class =" sr-only" >License</span >
42- <select data-filter-bind =" license" data-filter-delimiter =" ," class =" text-white py-1 px-2 rounded-default border border-white bg-transparent" >
43- <option selected value =" " >All Licenses</option >
44- {%- for license in collections .generators | select (" data.license" ) | flatten | unique | sort (false , false ) %}
45- <option value =" {{ license | lower }}" >{{ license }} </option >
46- {%- endfor %}
47- </select >
48- </label >
49- </form >
50- <div class =" grid gap-4 grid-cols-1 md:grid-cols-2 lg:grid-cols-3" >
51- {% for item in collections .generators | sortTools (github ) %}
52- {{ cards .repo (item , loop .index0 , github ) }}
53- {% endfor %}
54- </div >
55- </filter-container >
72+ </filter-container >
73+ </sort-container >
5674</section >
5775
5876<section class =" mt-12" >
0 commit comments