mirror of
https://github.com/NeonGamerBot-QK/saahild.com.git
synced 2025-07-28 09:04:07 +00:00
work
This commit is contained in:
parent
03bf0f8778
commit
e577d87ce4
7 changed files with 94 additions and 7 deletions
6
app.vue
6
app.vue
|
@ -1,9 +1,13 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import Backdrop from "./components/Backdrop.vue";
|
import Backdrop from "./components/Backdrop.vue";
|
||||||
import Footer from "./components/Footer.vue";
|
import Footer from "./components/Footer.vue";
|
||||||
// import "./lib/jsscripts/index.ts";
|
|
||||||
import Navbar from "./components/Navbar.vue";
|
import Navbar from "./components/Navbar.vue";
|
||||||
|
import "./lib/jsscripts/index.ts";
|
||||||
useHead({
|
useHead({
|
||||||
|
title: "Saahils Site",
|
||||||
|
meta: {
|
||||||
|
|
||||||
|
},
|
||||||
noscript: [
|
noscript: [
|
||||||
{
|
{
|
||||||
children: `
|
children: `
|
||||||
|
|
13
components/AboutMe.vue
Normal file
13
components/AboutMe.vue
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
<script>
|
||||||
|
// TODO: calc current age, hobbies
|
||||||
|
</script>
|
||||||
|
<template>
|
||||||
|
<h1 class="font-bold text-3xl">About me:</h1>
|
||||||
|
<ul>
|
||||||
|
<li>I am currently XYZ years old</li>
|
||||||
|
<li>Im currently in (highschool|collage|j*b|retirment|greatbeyond) (this is just a guess)</li>
|
||||||
|
<li>i like mostly coding in my freetime, messing with bugs, watching anime and sleeping</li>
|
||||||
|
<li>i also like eating lots of food!</li>
|
||||||
|
<li>i also like playing video games</li>
|
||||||
|
</ul>
|
||||||
|
</template>
|
49
components/FeedbackCards.vue
Normal file
49
components/FeedbackCards.vue
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
<template>
|
||||||
|
<div class="flex justify-right items-right ">
|
||||||
|
<div class="relative w-80 h-96" @click="rotateStack" @touchstart="handleTouchStart" @touchend="handleTouchEnd">
|
||||||
|
<div
|
||||||
|
v-for="(card, index) in displayedCards"
|
||||||
|
:key="card.id"
|
||||||
|
class="card w-full h-1/2 absolute top-0 left-0 cursor-pointer transition-transform duration-300"
|
||||||
|
:class="card.color"
|
||||||
|
:style="{ zIndex: cards.length - index, transform: index === 0 ? 'translateY(0)' : 'translateY(-' + index * 10 + 'px)' }"
|
||||||
|
>
|
||||||
|
<div class="card-body">
|
||||||
|
<h2 class="card-title">{{ card.title }}</h2>
|
||||||
|
<p>{{ card.text }}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref, computed, watch } from 'vue'
|
||||||
|
const props = defineProps({
|
||||||
|
cards: {
|
||||||
|
type: Array,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
const cards = ref([...props.cards])
|
||||||
|
|
||||||
|
watch(() => props.cards, (newVal) => {
|
||||||
|
cards.value = [...newVal]
|
||||||
|
})
|
||||||
|
|
||||||
|
const displayedCards = computed(() => [...cards.value].reverse())
|
||||||
|
|
||||||
|
function rotateStack() {
|
||||||
|
const top = cards.value.shift()
|
||||||
|
cards.value.push(top)
|
||||||
|
}
|
||||||
|
|
||||||
|
let touchStartX = 0
|
||||||
|
function handleTouchStart(e) {
|
||||||
|
touchStartX = e.touches[0].clientX
|
||||||
|
}
|
||||||
|
function handleTouchEnd(e) {
|
||||||
|
const touchEndX = e.changedTouches[0].clientX
|
||||||
|
if (touchStartX - touchEndX > 50) rotateStack()
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -15,7 +15,7 @@
|
||||||
<!-- Social icons go here -->
|
<!-- Social icons go here -->
|
||||||
<!-- TODO: make sure the bento icon is here, pgp, and canary and source link -->
|
<!-- TODO: make sure the bento icon is here, pgp, and canary and source link -->
|
||||||
<a
|
<a
|
||||||
href="https://github.com/saahild.com"
|
href="https://github.com/NeonGamerBot-QK/saahild.com"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener noreferrer"
|
rel="noopener noreferrer"
|
||||||
>
|
>
|
||||||
|
|
4
components/SnakeGrid.vue
Normal file
4
components/SnakeGrid.vue
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<!-- peak code -->
|
||||||
|
<template>
|
||||||
|
<img src="https://raw.githubusercontent.com/NeonGamerBot-QK/NeonGamerBot-QK/output/github-contribution-grid-snake.svg"/>
|
||||||
|
</template>
|
|
@ -2,7 +2,9 @@ import { startingLog } from "./log";
|
||||||
import { runTitle } from "./changing_title";
|
import { runTitle } from "./changing_title";
|
||||||
import { injectOneko } from "./oneko";
|
import { injectOneko } from "./oneko";
|
||||||
|
|
||||||
onNuxtReady(() => {
|
if (process.client) {
|
||||||
|
// DOM-related logic here
|
||||||
|
// onMounted(() => {
|
||||||
startingLog();
|
startingLog();
|
||||||
runTitle();
|
runTitle();
|
||||||
|
|
||||||
|
@ -16,4 +18,6 @@ onNuxtReady(() => {
|
||||||
temp_id: Date.now() + Math.random().toString(36).substring(2, 15),
|
temp_id: Date.now() + Math.random().toString(36).substring(2, 15),
|
||||||
user_agent: navigator.userAgent,
|
user_agent: navigator.userAgent,
|
||||||
});
|
});
|
||||||
});
|
// });
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -1 +1,14 @@
|
||||||
<template>About who?</template>
|
<script lang="ts" setup>
|
||||||
|
import FeedbackCards from '~/components/FeedbackCards.vue';
|
||||||
|
let cards = [
|
||||||
|
{ id: 1, title: 'Card 1', text: 'First card', color: 'bg-base-100 text-primary-content' },
|
||||||
|
{ id: 2, title: 'Card 2', text: 'Second card', color: 'bg-base-100 text-primary-content' },
|
||||||
|
{ id: 3, title: 'Card 3', text: 'Third card', color: 'bg-base-100 text-primary-content' },
|
||||||
|
]
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="m-20">
|
||||||
|
<FeedbackCards :cards="cards" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue