11<template >
22 <div class =" home-container" >
33 <div class =" projects-grid" >
4- <p >This page is a Work In Progress</p >
54 <ProjectCard
65 v-for =" project in projects"
76 :key =" project.title"
1716
1817<script >
1918import ProjectCard from ' ../components/Projects/ProjectCard.vue' ;
20- import pokemonAssistantAI from ' ../resources/projects/tauri/pokemon-assistant/ai-assistant.png' ;
21- // import spaceInvaders from '../resources/projects/godot/spaceinvaders.mp4';
19+ import pokemonAssistant from ' ../resources/projects/tauri/pokemon-assistant/demo.gif' ;
20+ import pong from ' ../resources/projects/godot/pong.gif' ;
21+ import spaceInvaders from ' ../resources/projects/godot/space-invaders.gif' ;
22+ import breakout from ' ../resources/projects/godot/breakout.gif' ;
23+ import bridgesprototype from ' ../resources/projects/godot/bridgesprototype.gif' ;
2224import kavibotDiscord from ' ../resources/projects/kavibot/discord.gif' ;
2325import kavibotTwitch from ' ../resources/projects/kavibot/twitch.gif' ;
24- import focusCoffeeCoffee from ' ../resources/projects/tauri/focus-coffee/coffee.png' ;
25- import spotifyYearlyStats from ' ../resources/projects/tauri/spotify-explorer/yearly-stats.png' ;
26+ import focusCoffee from ' ../resources/projects/tauri/focus-coffee/demo.gif' ;
27+ import spotifyExplorer from ' ../resources/projects/tauri/spotify-explorer/demo.gif' ;
28+ import vinylTracker from ' ../resources/projects/web/vinyl-tracker/demo.gif' ;
29+ import priorityTracker from ' ../resources/projects/web/priority-tracker/demo.gif' ;
30+ import hexToHSL from ' ../resources/projects/hex-to-hsl/demo.gif' ;
2631
2732const projects = [
2833 {
@@ -32,26 +37,90 @@ const projects = [
3237 + ' powered recommendations and chat assistance to determine the best counters against opponent Pokémon.' ,
3338 technologies: [' Tauri' , ' Rust' , ' Claude' ],
3439 media: {
35- src: pokemonAssistantAI,
36- alt: ' Pokemon Assistant AI screen' ,
37- caption: ' AI Assistant.' ,
40+ src: pokemonAssistant,
41+ alt: ' Pokemon Assistant demo' ,
42+ },
43+ },
44+ {
45+ title: ' Focus Coffee' ,
46+ category: ' Tauri Development' ,
47+ description: ' Desktop drink companion and pomodoro timer with an added simple task list. '
48+ + ' Change themes to match your favourite drink. Sits on top of your windows to help you focus' ,
49+ technologies: [' Tauri' ],
50+ media: {
51+ src: focusCoffee,
52+ alt: ' Focus Coffee demo' ,
53+ },
54+ },
55+ {
56+ title: ' Hex to HSL' ,
57+ category: ' Development' ,
58+ description: ' A simple extension that converts any hex and rgb colours in your files to the hsl format, and back to hex' ,
59+ technologies: [' TypeScript' ],
60+ media: {
61+ src: hexToHSL,
62+ alt: ' Hex to HSL demo' ,
63+ },
64+ },
65+ {
66+ title: ' Bridges Prototype' ,
67+ category: ' Game Development' ,
68+ description: ' Prototype of a Bridges puzzle game made using Godot. The goal is to '
69+ + ' collect wood from tree stumps, and place bridges across rivers to reach the gold. '
70+ + ' This is a work in progress' ,
71+ technologies: [' Godot' ],
72+ media: {
73+ src: bridgesprototype,
74+ alt: ' Bridges Prototype' ,
75+ },
76+ },
77+ {
78+ title: ' Breakout' ,
79+ category: ' Game Development' ,
80+ description: ' Breakout game made using Godot.' ,
81+ technologies: [' Godot' ],
82+ media: {
83+ src: breakout,
84+ alt: ' Breakout' ,
85+ },
86+ },
87+ {
88+ title: ' Space Invaders' ,
89+ category: ' Game Development' ,
90+ description: ' Space Invaders game made using Godot.' ,
91+ technologies: [' Godot' ],
92+ media: {
93+ src: spaceInvaders,
94+ alt: ' Space Invaders' ,
95+ },
96+ },
97+ {
98+ title: ' Pong' ,
99+ category: ' Game Development' ,
100+ description: ' Pong game made using Godot.' ,
101+ technologies: [' Godot' ],
102+ media: {
103+ src: pong,
104+ alt: ' Pong' ,
105+ },
106+ },
107+ {
108+ title: ' Priority Tracker' ,
109+ category: ' Web Development' ,
110+ description: ' A JIRA-like app I built to track all my projects. You can add and categorize your projects, prioritize'
111+ + ' them. Log tasks to the projects you want to focus on. Move tasks between Active, Up Next and Backlog.'
112+ + ' Developed using Nuxt and Vue.js on the front-end and a Node.js API using Serverless on the backend.' ,
113+ technologies: [' Vue' , ' Nuxt.js' , ' Serverless' ],
114+ media: {
115+ src: priorityTracker,
116+ alt: ' Priority Tracker demo' ,
38117 },
39118 },
40- // {
41- // title: 'Space Invaders',
42- // category: 'Game Development',
43- // description: 'Space Invaders game maded using Godot.',
44- // technologies: ['Godot'],
45- // media: {
46- // src: spaceInvaders,
47- // alt: 'Space Invaders',
48- // },
49- // },
50119 {
51120 title: ' Kavibot Discord' ,
52121 category: ' ChatBot' ,
53122 description: ' Discord App with some fun/useful custom commands, including a Valorant battle game, '
54- + ' reminders and timestamp generator.' ,
123+ + ' reminders that ping you, and a timestamp generator.' ,
55124 technologies: [' Node.js' , ' Discord API' ],
56125 media: {
57126 src: kavibotDiscord,
@@ -62,7 +131,7 @@ const projects = [
62131 title: ' Kavibot Twitch' ,
63132 category: ' ChatBot' ,
64133 description: ' Twitch bot with some fun/useful custom commands, including a in-chat task bot'
65- + ' , streamer shoutout commands and more. Task API build using Serverless.' ,
134+ + ' , streamer shoutout and welcome commands and more. Task API build using Serverless.' ,
66135 technologies: [' TypeScript' , ' Twitch API' , ' Serverless' ],
67136 media: {
68137 src: kavibotTwitch,
@@ -73,23 +142,24 @@ const projects = [
73142 title: ' Spotify Data Explorer' ,
74143 category: ' Tauri Development' ,
75144 description: ' Desktop app, written in Vue, to analyze Spotify listening history and generate user'
76- + ' trends from large JSON datasets; additionally includes a custom Spotify player UI.' ,
145+ + ' trends from large JSON datasets. Displays your yearly and monthly history, along with'
146+ + ' individual artist and song stats. Additionally includes a custom Spotify player UI'
147+ + ' (which sadly doesn\' t work anymore since Spotify changes their API terms to require'
148+ + ' a Premium subscription' ,
77149 technologies: [' Vue' , ' Tauri' , ' TypeScript' ],
78150 media: {
79- src: spotifyYearlyStats,
80- alt: ' Spotify Data Explorer yearly listening statistics' ,
81- caption: ' Yearly summary view for larger listening trends and comparisons.' ,
151+ src: spotifyExplorer,
152+ alt: ' Spotify Data Explorer demo' ,
82153 },
83154 },
84155 {
85- title: ' Focus Coffee ' ,
86- category: ' Tauri Development' ,
87- description: ' Desktop drink companion and pomodoro timer ' ,
88- technologies: [' Tauri ' ],
156+ title: ' Vinyl Tracker ' ,
157+ category: ' Web Development' ,
158+ description: ' A web app to track your vinyls catalog and activity. ' ,
159+ technologies: [' Vue ' , ' PWA ' , ' TypeScript ' ],
89160 media: {
90- src: focusCoffeeCoffee,
91- alt: ' Focus Coffee drink screen' ,
92- caption: ' A coffee-themed view from the Focus Coffee desktop app.' ,
161+ src: vinylTracker,
162+ alt: ' Vinyl Tracker demo' ,
93163 },
94164 },
95165];
@@ -110,13 +180,24 @@ export default {
110180<style scoped>
111181.home-container {
112182 color : hsl (355 , 35% , 28% );
183+ max-width : 1800px ;
113184 margin : 0 auto ;
114- max-width : 1100px ;
115185 padding : 2rem 1.25rem 4rem ;
116186}
117187
118188.projects-grid {
119189 display : grid ;
120190 gap : 1.5rem ;
191+ grid-template-columns : auto auto ;
192+ }
193+
194+ @media screen and (max-width : 1500px ) {
195+ .home-container {
196+ max-width : 1100px ;
197+ }
198+
199+ .projects-grid {
200+ grid-template-columns : auto ;
201+ }
121202}
122203 </style >
0 commit comments