Skip to content

Commit a82ffbd

Browse files
committed
add contributor list
1 parent a7a8357 commit a82ffbd

File tree

3 files changed

+120
-7
lines changed

3 files changed

+120
-7
lines changed

site/scripts/get-contributors.js

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
const fs = require('fs');
2+
const fetch = require('node-fetch');
3+
4+
process.chdir(__dirname);
5+
6+
fetch(`https://api.github.com/repos/sveltejs/svelte/stats/contributors`)
7+
.then(r => r.json())
8+
.then(contributors => {
9+
const munged = contributors
10+
.sort((a, b) => b.total - a.total)
11+
.map(({ author }) => ({ name: author.login, src: author.avatar_url }));
12+
13+
const str = `[\n\t${munged.map(c => `{ name: '${c.name}', src: '${c.src}' }`).join(',\n\t')}\n]`;
14+
15+
fs.writeFileSync(`../src/routes/_contributors.js`, `export default ${str};`);
16+
});

site/src/routes/_contributors.js

+72
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
export default [
2+
{ name: 'Rich-Harris', src: 'https://avatars3.githubusercontent.com/u/1162160?v=4' },
3+
{ name: 'Conduitry', src: 'https://avatars1.githubusercontent.com/u/16696352?v=4' },
4+
{ name: 'Swatinem', src: 'https://avatars0.githubusercontent.com/u/580492?v=4' },
5+
{ name: 'jacwright', src: 'https://avatars2.githubusercontent.com/u/120294?v=4' },
6+
{ name: 'ekhaled', src: 'https://avatars2.githubusercontent.com/u/198751?v=4' },
7+
{ name: 'PaulBGD', src: 'https://avatars2.githubusercontent.com/u/3516420?v=4' },
8+
{ name: 'UnwrittenFun', src: 'https://avatars3.githubusercontent.com/u/3743418?v=4' },
9+
{ name: 'FWeinb', src: 'https://avatars0.githubusercontent.com/u/1250430?v=4' },
10+
{ name: 'jacobmischka', src: 'https://avatars1.githubusercontent.com/u/3939997?v=4' },
11+
{ name: 'mrkishi', src: 'https://avatars1.githubusercontent.com/u/150237?v=4' },
12+
{ name: 'tivac', src: 'https://avatars0.githubusercontent.com/u/49545?v=4' },
13+
{ name: 'taylorzane', src: 'https://avatars1.githubusercontent.com/u/5092987?v=4' },
14+
{ name: 'm59peacemaker', src: 'https://avatars0.githubusercontent.com/u/4369247?v=4' },
15+
{ name: 'esarbanis', src: 'https://avatars1.githubusercontent.com/u/633903?v=4' },
16+
{ name: 'lukeed', src: 'https://avatars1.githubusercontent.com/u/5855893?v=4' },
17+
{ name: 'kaisermann', src: 'https://avatars3.githubusercontent.com/u/12702016?v=4' },
18+
{ name: 'TehShrike', src: 'https://avatars0.githubusercontent.com/u/1141869?v=4' },
19+
{ name: 'emilos', src: 'https://avatars3.githubusercontent.com/u/2088208?v=4' },
20+
{ name: 'arxpoetica', src: 'https://avatars0.githubusercontent.com/u/111424?v=4' },
21+
{ name: 'aphitiel', src: 'https://avatars2.githubusercontent.com/u/5216257?v=4' },
22+
{ name: 'shinnn', src: 'https://avatars0.githubusercontent.com/u/1131567?v=4' },
23+
{ name: 'cristinecula', src: 'https://avatars2.githubusercontent.com/u/710155?v=4' },
24+
{ name: 'timhall', src: 'https://avatars0.githubusercontent.com/u/1211148?v=4' },
25+
{ name: 'btakita', src: 'https://avatars1.githubusercontent.com/u/3664?v=4' },
26+
{ name: 'stalkerg', src: 'https://avatars0.githubusercontent.com/u/1853716?v=4' },
27+
{ name: 'hperrin', src: 'https://avatars1.githubusercontent.com/u/195918?v=4' },
28+
{ name: 'RedHatter', src: 'https://avatars1.githubusercontent.com/u/1530025?v=4' },
29+
{ name: 'GarethOates', src: 'https://avatars2.githubusercontent.com/u/362627?v=4' },
30+
{ name: 'nikku', src: 'https://avatars2.githubusercontent.com/u/58601?v=4' },
31+
{ name: 'cayasso', src: 'https://avatars0.githubusercontent.com/u/42518?v=4' },
32+
{ name: 'neoel', src: 'https://avatars3.githubusercontent.com/u/1440704?v=4' },
33+
{ name: 'saibotsivad', src: 'https://avatars1.githubusercontent.com/u/91254?v=4' },
34+
{ name: 'funkybob', src: 'https://avatars2.githubusercontent.com/u/301363?v=4' },
35+
{ name: 'dmitrykurmanov', src: 'https://avatars3.githubusercontent.com/u/22315929?v=4' },
36+
{ name: 'fjorgemota', src: 'https://avatars0.githubusercontent.com/u/529864?v=4' },
37+
{ name: 'amwmedia', src: 'https://avatars1.githubusercontent.com/u/732336?v=4' },
38+
{ name: 'Crisfole', src: 'https://avatars2.githubusercontent.com/u/413237?v=4' },
39+
{ name: 'martinandert', src: 'https://avatars0.githubusercontent.com/u/6715978?v=4' },
40+
{ name: 'nolanlawson', src: 'https://avatars0.githubusercontent.com/u/283842?v=4' },
41+
{ name: 'cam-stitt', src: 'https://avatars2.githubusercontent.com/u/186643?v=4' },
42+
{ name: 'charpeni', src: 'https://avatars1.githubusercontent.com/u/7189823?v=4' },
43+
{ name: 'klaussner', src: 'https://avatars1.githubusercontent.com/u/1312807?v=4' },
44+
{ name: 'lguzzon', src: 'https://avatars2.githubusercontent.com/u/902512?v=4' },
45+
{ name: 'Zirro', src: 'https://avatars2.githubusercontent.com/u/3169418?v=4' },
46+
{ name: 'hville', src: 'https://avatars3.githubusercontent.com/u/1555569?v=4' },
47+
{ name: 'marvinhagemeister', src: 'https://avatars2.githubusercontent.com/u/1062408?v=4' },
48+
{ name: 'jpsc', src: 'https://avatars3.githubusercontent.com/u/411763?v=4' },
49+
{ name: 'vp2177', src: 'https://avatars3.githubusercontent.com/u/451903?v=4' },
50+
{ name: 'petterek', src: 'https://avatars2.githubusercontent.com/u/181268?v=4' },
51+
{ name: 'EmilTholin', src: 'https://avatars0.githubusercontent.com/u/11573167?v=4' },
52+
{ name: 'StarpTech', src: 'https://avatars2.githubusercontent.com/u/1764424?v=4' },
53+
{ name: 'alexnoz', src: 'https://avatars0.githubusercontent.com/u/22446806?v=4' },
54+
{ name: 'scottbedard', src: 'https://avatars2.githubusercontent.com/u/7980426?v=4' },
55+
{ name: 'asweingarten', src: 'https://avatars2.githubusercontent.com/u/846035?v=4' },
56+
{ name: 'guzart', src: 'https://avatars3.githubusercontent.com/u/247952?v=4' },
57+
{ name: 'leereamsnyder', src: 'https://avatars0.githubusercontent.com/u/870668?v=4' },
58+
{ name: 'talklittle', src: 'https://avatars1.githubusercontent.com/u/87961?v=4' },
59+
{ name: 'zzolo', src: 'https://avatars2.githubusercontent.com/u/190733?v=4' },
60+
{ name: 'khtdr', src: 'https://avatars0.githubusercontent.com/u/1775593?v=4' },
61+
{ name: '1wheel', src: 'https://avatars1.githubusercontent.com/u/1643998?v=4' },
62+
{ name: 'antony', src: 'https://avatars0.githubusercontent.com/u/218949?v=4' },
63+
{ name: 'MaxMilton', src: 'https://avatars1.githubusercontent.com/u/14946546?v=4' },
64+
{ name: 'acstll', src: 'https://avatars2.githubusercontent.com/u/851105?v=4' },
65+
{ name: 'paulocoghi', src: 'https://avatars1.githubusercontent.com/u/378397?v=4' },
66+
{ name: 'Kiho', src: 'https://avatars2.githubusercontent.com/u/420295?v=4' },
67+
{ name: 'blittle', src: 'https://avatars1.githubusercontent.com/u/1566869?v=4' },
68+
{ name: 'arggh', src: 'https://avatars3.githubusercontent.com/u/17210302?v=4' },
69+
{ name: '6eDesign', src: 'https://avatars1.githubusercontent.com/u/2213673?v=4' },
70+
{ name: 'njbotkin', src: 'https://avatars0.githubusercontent.com/u/5950281?v=4' },
71+
{ name: 'domin1101', src: 'https://avatars2.githubusercontent.com/u/11724557?v=4' }
72+
];

site/src/routes/index.html

+32-7
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<script>
22
import Icon from '../components/Icon.html';
33
import Logo from '../components/Logo.html';
4+
import contributors from './_contributors.js';
45

56
let sy = 0;
67
</script>
@@ -132,10 +133,21 @@
132133

133134
a.cta {
134135
background-color: var(--prime);
135-
padding: 0.5em 1.8em 0.5em 1em;
136-
border-radius: var(--border-r);
137-
color: white;
138-
position: relative;
136+
padding: 0.5em 1.8em 0.5em 1em;
137+
border-radius: var(--border-r);
138+
color: white;
139+
position: relative;
140+
}
141+
142+
.contributor {
143+
width: 2.4em;
144+
height: 2.4em;
145+
border-radius: 50%;
146+
text-indent: -9999px;
147+
display: inline-block;
148+
background-size: 100% 100%;
149+
margin: 0 0.5em 0.5em 0;
150+
border: 1px solid var(--second);
139151
}
140152

141153
@media (min-width: 920px) {
@@ -267,8 +279,21 @@ <h2 style='padding:2.4rem 0 0 0'>Truly reactive</h2>
267279
></iframe>
268280
</section>
269281

270-
<section class="container grid half">
271-
<p>TODO finish building this page. Ideas: Who's using Svelte? Example code (interactive, ideally). What else?</p>
282+
<section class="container linkify">
283+
<h3>Who's using Svelte?</h3>
284+
<p>TODO. See <a href="https://github.com/sveltejs/svelte.technology/issues/379">this issue</a></p>
272285
</section>
273286

274-
<!-- TODO example code transformation (interactive REPL?) -->
287+
<section class="container linkify">
288+
<h3>Contributors</h3>
289+
290+
<p>Svelte is free and open source software, made possible by the work of dozens of volunteers. <a href="https://github.com/sveltejs/svelte">Join us!</a></p>
291+
292+
{#each contributors as contributor}
293+
<a
294+
class="contributor"
295+
style="background-image: url({contributor.src})"
296+
href="https://github.com/{contributor.name}"
297+
>{contributor.name}</a>
298+
{/each}
299+
</section>

0 commit comments

Comments
 (0)