personal-site/pages/index.vue

60 lines
1.3 KiB
Vue
Raw Normal View History

<script setup lang="ts">
definePageMeta({ layout: 'home' })
</script>
2023-11-01 20:31:43 +00:00
<template>
<div id="home" class="row centerChildren">
<NuxtImg
aria-hidden="true" alt="my profile picture" class="pfp"
src="/assets/pfp.svg" preload width="320" height="320"
/>
2023-11-01 20:31:43 +00:00
<main class="col gap2">
2024-01-31 02:11:31 +00:00
<marquee><h1>Hi, I'm F53</h1></marquee>
2023-11-01 20:31:43 +00:00
<p class="bio">
I'm a {{ Math.floor((Date.now() / 100000 - 10463292) / 315360) }}yo Full Stack Developer
2023-11-13 18:48:58 +00:00
who spends a majority of their free time tinkering on websites and game mods.
2023-11-01 20:31:43 +00:00
Fluent in React, Vue, Ruby on Rails, Java, and Python.
</p>
<Links />
2023-11-01 20:31:43 +00:00
</main>
</div>
<DevOnly>
<div>
<h2>TODO:</h2>
<ul>
<li>background: move render to worker thread</li>
<li>portfolio sorting, filtering</li>
<li>self-host blogs</li>
<li>duplicate site, but with real name and picture</li>
</ul>
</div>
</DevOnly>
2023-11-01 20:31:43 +00:00
</template>
<style lang="scss">
#home {
--imgSize: min(20rem, 50vw, 50vh);
@media (max-width: 60rem) {
flex-direction: column;
--imgSize: min(20rem, 100vw - 1rem)
}
gap: 2rem;
img.pfp {
width: var(--imgSize);
height: var(--imgSize);
}
main {
2024-01-30 20:57:40 +00:00
max-width: min(40rem, var(--content-width));
2023-11-01 20:31:43 +00:00
}
2023-11-10 06:34:34 +00:00
h1 { color: var(--accent-light); }
2023-11-01 20:31:43 +00:00
}
</style>