-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
executable file
·352 lines (319 loc) · 14.7 KB
/
index.html
File metadata and controls
executable file
·352 lines (319 loc) · 14.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
<!doctype html>
<html lang="en" class="bg-zinc-900 text-zinc-100">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Kanttiinit, Story so far</title>
<meta name="description" content="Kanttiinit, short info about the project and its future" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="canonical" href="https://kanttiinit.github.io" />
<meta property="og:title" content="Kanttiinit, Story so far" />
<meta property="og:description" content="Kanttiinit, short info about the project and its future" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://kanttiinit.github.io" />
<meta property="og:image" content="./preview.jpg" />
<meta property="og:image:width" content="1024" />
<meta property="og:image:height" content="1024" />
<meta property="og:image:alt" content="Kanttiinit, Story so far" />
<meta property="og:site_name" content="kanttiinit.github.io" />
<link rel="icon" href="./favicon.ico" type="image/x-icon">
<link rel="icon" href="./favicon-32x32.png" sizes="32x32" type="image/png">
<script src="https://cdn.tailwindcss.com"></script>
<script defer data-domain="kanttiinit.github.io" src="https://plausible.io/js/script.outbound-links.tagged-events.js"></script>
<style>
:root {
--kanttiinit-green: #06cbb0;
--kanttiinit-green-2: #0b8e72;
}
.kanttiinit-green {
color: var(--kanttiinit-green);
}
.kanttiinit-green-2 {
color: var(--kanttiinit-green-2);
}
.accent-orange {
color: #ff7e5f;
}
.accent-blue {
color: #3b82f6;
}
.accent-light-blue {
color: #93c5fd;
}
.accent-blue-gray {
color: #7a8eb5;
}
.accent-green {
color: #10b981;
}
a.text-link {
text-decoration: underline;
}
.typewriter>* {
opacity: 0;
white-space: pre;
overflow: hidden;
}
.typewriter>.line {
animation: type 1s steps(40, end) forwards;
}
.typewriter>.line:nth-child(2) {
animation-delay: 1s;
}
.typewriter>.line:nth-child(3) {
animation-delay: 2s;
}
.typewriter>.line:nth-child(4) {
animation-delay: 3s;
}
.typewriter>.line:nth-child(5) {
animation-delay: 4s;
}
@keyframes type {
from {
width: 0;
opacity: 1;
}
to {
width: 100%;
opacity: 1;
}
}
.xp-highlight {
background: linear-gradient(180deg, red, orange);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
font-weight: bold;
position: relative;
}
.snazzy-text {
font-weight: 600;
font-size: 1.5rem;
background: linear-gradient(90deg, #54d3ff, #b990ff, #ffa6a0);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-size: 200%;
animation: gradientShift 4s ease infinite;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
position: relative;
}
@keyframes gradientShift {
0% {
background-position: 0% center;
}
50% {
background-position: 100% center;
}
100% {
background-position: 0% center;
}
}
</style>
</head>
<body class="min-h-screen font-mono bg-zinc-900 text-zinc-100 px-6 py-12">
<main class="max-w-4xl mx-auto space-y-24">
<div class="grid grid-cols-1 md:grid-cols-2 gap-10 items-center">
<div>
<h1 class="text-4xl md:text-5xl font-bold leading-tight mb-6">
<span class="snazzy-text text-4xl md:text-5xl font-bold">Kanttiinit is open source?</span>🤯
</h1>
<p class="text-zinc-200 mb-6">
Help us build it. It's used by ten thousand students
in the Greater Helsinki area.
</p>
<p class="text-zinc-200 mb-6">
Do you know <span class="accent-orange">Svelte</span>?
Or maybe you're a
<span class="accent-light-blue">React</span> wizard?
Wanna learn <span class="accent-blue">Flutter</span>? Or
build an
<span class="accent-green">OSM tileserver</span>?
</p>
<a href="https://github.com/Kanttiinit" target="_blank"
onclick="plausible('kanttiinit-github')"
class="inline-block px-5 py-3 bg-green-500 hover:bg-green-400 text-black font-semibold rounded-lg transition"
style="background-color: var(--kanttiinit-green)">
Clone the source
</a>
<a href="https://t.me/+zrcorCUwBW5iOTNk" target="_blank"
onclick="plausible('kanttiinit-telegram')"
class="inline-block px-5 py-3 mt-3 bg-zinc-800 hover:bg-zinc-700 text-white font-semibold rounded-lg transition">
Chat with us
</a>
</div>
<div class="bg-zinc-800 rounded-xl p-4 shadow-lg text-sm leading-relaxed font-mono">
<div class="typewriter overflow-hidden">
<div class="line text-green-400">
$ npx drink-coffee --with kanttiinit
</div>
<div class="line text-zinc-300">
☕ Drinking coffee with kanttiinit devs... ✅
<span>Ready! Enjoy your productivity boost.</span>
</div>
<div class="line text-zinc-300">
✔ Help build services for students?<br /><span>› Yes</span>
</div>
<div class="line text-zinc-300">
✔ Get mentored by professionals?<br /><span>› Yes</span>
</div>
<div class="line text-zinc-300">
✔ Level up your coding <span class="xp-highlight">XP</span> by contributing?<br /><span>› Yes</span>
</div>
</div>
</div>
</div>
<section class="text-zinc-300 space-y-4">
<h2 class="text-2xl md:text-3xl font-semibold text-zinc-100">
The Story So Far
</h2>
<p class="leading-relaxed">
Wow, this is actually the first marketing that we've ever done.
</p>
<p class="leading-relaxed">
In 2015, Otaniemi had no good website for finding the
tastiest lunch between all the different canteens. We built
it for our own use and shared the <a class="accent-blue text-link" href="https://kanttiinit.fi"
onclick="plausible('kanttiinit-website')"
target="_blank">link</a> with our friends.
<br /><br />
It solved a problem we ran into every day — and others
noticed too. We always wanted it to be free and open source,
forever, and will keep it that way.
</p>
<p class="leading-relaxed">
Fast forward to 2025, it's used by ten thousand students
every week.
</p>
</section>
<section class="text-zinc-300 space-y-4">
<h2 class="text-2xl md:text-3xl font-semibold text-zinc-100">
What You Can Get From Kanttiinit
</h2>
<p class="leading-relaxed">
By contributing to the project you can develop your portfolio, learn web development and maybe code with us.
And perhaps we can learn something from you. We're very open to mentoring junior developers who
want to learn while doing.
</p>
<p class="leading-relaxed">
We want to continue giving to the community and helping
students, perhaps someday giving the project away to
the student union.
</p>
<p class="leading-relaxed font-bold">
We need help for supporting new restaurants, fixing parsers, maybe making some parsing more automagical,
polish the UX, fix bugs, imagine new features and take things forward.
</p>
</section>
<section class="text-zinc-300 space-y-4">
<h2 class="text-2xl md:text-3xl font-semibold text-zinc-100">
Tech Stack
</h2>
<p class="leading-relaxed">
It's a mix of different technologies. We have a trusty
<span class="accent-green">NodeJS</span> backend, a
<span class="accent-blue-gray">PostgreSQL</span> database,
and a <span class="accent-blue">SolidJS</span> frontend.
</p>
<p class="leading-relaxed">
We've always chosen the tech that is relevant and that we
want to learn. If you want to have an excuse to learn
something new, pick what you want to learn and start
hacking. You can contact us if you need help or mentoring.
</p>
<p class="leading-relaxed">
<span class="accent-orange">SvelteKit</span> and static
(pre)rendering is something we are playing with to learn and
maybe modernise our app, if only we had time...
</p>
<div class="grid grid-cols-3 gap-6 max-w-md mx-auto p-6 rounded-2xl">
<div class="flex flex-col items-center">
<img src="https://www.solidjs.com/img/logo/without-wordmark/logo.svg" alt="SolidJS"
class="h-12 mb-2" />
<a href="https://www.solidjs.com/" target="_blank" class="text-white text-link text-sm">SolidJS</a>
</div>
<div class="flex flex-col items-center">
<img src="https://upload.wikimedia.org/wikipedia/commons/2/29/Postgresql_elephant.svg"
alt="PostgreSQL" class="h-12 mb-2" />
<a href="https://www.postgresql.org/" target="_blank"
class="text-white text-link text-sm">PostgreSQL</a>
</div>
<div class="flex flex-col items-center">
<img src="https://upload.wikimedia.org/wikipedia/commons/6/67/NodeJS.png?20130122160021"
alt="NodeJS" class="h-12 mb-2" />
<a href="https://nodejs.org/en" target="_blank" class="text-white text-link text-sm">NodeJS</a>
</div>
</div>
<div class="grid grid-cols-3 gap-6 max-w-md mx-auto p-6 rounded-2xl">
<div class="flex flex-col items-center">
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/1/1b/Svelte_Logo.svg/996px-Svelte_Logo.svg.png"
alt="SvelteKit" class="h-12 mb-2" />
<a href="https://svelte.dev/" target="_blank" class="text-white text-link text-sm">SvelteKit</a>
</div>
</div>
<p class="leading-relaxed">
We don't have a feature roadmap, but we're looking to modernise and simplify. Long term we're
looking to make the webapp more portable and perhaps serverless. And we always need more, and more robust,
menu parsers! 🤖
<br><br>
Making it easier to add new restaurants and canteens is a priority to support even more students,
even outside of the Greater Helsinki area.
</p>
</section>
<section class="text-zinc-300 space-y-4">
<h2 class="text-2xl md:text-3xl font-semibold text-zinc-100">
If You're Interested
</h2>
<p class="leading-relaxed">
Contact us or make a fork and PR to our <a href="https://github.com/Kanttiinit/web" target="_blank"
class="text-blue-400 text-link">web</a> repo for example. We're happy to help you get started.
<br><br>
Talk to us: join our <a href="https://t.me/+zrcorCUwBW5iOTNk" target="_blank"
onclick="plausible('kanttiinit-telegram')"
class="text-blue-400 text-link">Telegram group</a>
or connect with us on <a href="https://github.com/orgs/Kanttiinit/people" target="_blank"
onclick="plausible('kanttiinit-github')"
class="text-blue-400 text-link">GitHub</a> if that works for you.
</p>
</section>
<section class="text-zinc-300 space-y-4">
<h2 class="text-2xl md:text-3xl font-semibold text-zinc-100">
The Team
</h2>
<p class="leading-relaxed">
Together we have over 40 years of coding experience (no cap,
👴) from startups and slightly bigger companies,
both outside and inside Finland. Sprinkled with some
experience from hackathons etc, also winning some. And the passion to learn.
</p>
<p class="leading-relaxed">
Our backgrounds are in Aalto University, studying
<span class="text-blue-300">Computer Science</span>,
<span class="text-red-300">Information Networks</span>
with some
<span class="text-yellow-300">Arts</span> apparently in
there as well.
</p>
<p class="leading-relaxed">
We've all graduated, in one way or another, and are in the
industry now. We've been working on this project for a long, long time
and wish to let others have the same experience we've had
building stuff for the community.
</p>
</section>
</main>
<footer class="text-center text-zinc-400 mt-24 text-sm">
<p>
Made with ❤️ by
<a href="https://kanttiinit.fi" class="kanttiinit-green hover:underline"
onclick="plausible('kanttiinit-website')" target="_blank">
Kanttiinit
<img src="./logo.png" height="24px" width="24px" style="
display: inline;
margin-bottom: 4px;
margin-left: -6px;
" />
</a>
</p>
</footer>
</body>
</html>