mirror of
https://github.com/liyunze-coding/RythonDev.git
synced 2026-09-22 07:44:26 +00:00
updated projects
This commit is contained in:
parent
f7eba77789
commit
e0440aa4ca
4 changed files with 119 additions and 113 deletions
64
src/components/projects/MoreProjects.astro
Normal file
64
src/components/projects/MoreProjects.astro
Normal file
|
|
@ -0,0 +1,64 @@
|
||||||
|
---
|
||||||
|
import VideoProject from "./VideoProject.svelte";
|
||||||
|
import Project from "./Project.astro";
|
||||||
|
import TwitchPlays from "../images/projects/twitchplays.webp";
|
||||||
|
---
|
||||||
|
|
||||||
|
<div class="flex h-fit flex-col items-center pt-20 [perspective:1000px]">
|
||||||
|
<div class="w-full max-w-[1440px]">
|
||||||
|
<VideoProject
|
||||||
|
image_src="/images/projects/chess-opencv.webp"
|
||||||
|
image_alt="computer vision chess bot"
|
||||||
|
position="left"
|
||||||
|
video_src="/videos/chess_opencv_demo.webm"
|
||||||
|
title="Computer Vision Chess Bot"
|
||||||
|
description={`
|
||||||
|
A script that plays against opponents on lichess. Uses
|
||||||
|
OpenCV to detect the board and pieces, and the Stockfish
|
||||||
|
chess engine to determine the best moves. Then uses
|
||||||
|
PyAutoGUI to play the moves on the browser.
|
||||||
|
`}
|
||||||
|
tags={[
|
||||||
|
{
|
||||||
|
text: "Python",
|
||||||
|
textColor: "white",
|
||||||
|
bgColor: "var(--color-python)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: "OpenCV",
|
||||||
|
textColor: "white",
|
||||||
|
bgColor: "var(--color-opencv)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: "PyAutoGUI",
|
||||||
|
textColor: "white",
|
||||||
|
bgColor: "black",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
client:visible
|
||||||
|
/>
|
||||||
|
<Project
|
||||||
|
position="right"
|
||||||
|
image={TwitchPlays}
|
||||||
|
alt="Twitch Plays X"
|
||||||
|
href="https://github.com/liyunze-coding/TwitchPlaysX"
|
||||||
|
title="Twitch Plays X"
|
||||||
|
description={`Allow Twitch chatters to play games such as Pokemon!
|
||||||
|
Chatters can enter messages such as "up up down down left
|
||||||
|
right B A" and the Python program will trigger the
|
||||||
|
corresponding keypresses.`}
|
||||||
|
tags={[
|
||||||
|
{
|
||||||
|
text: "win32API",
|
||||||
|
bgColor: "var(--color-win32api)",
|
||||||
|
textColor: "white",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: "Python",
|
||||||
|
bgColor: "var(--color-python)",
|
||||||
|
textColor: "white",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
@ -1,65 +0,0 @@
|
||||||
<script lang="ts">
|
|
||||||
import VideoProject from "./VideoProject.svelte";
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<div class="flex h-fit flex-col items-center pt-20 [perspective:1000px]">
|
|
||||||
<div class="w-full max-w-[1440px]">
|
|
||||||
<VideoProject
|
|
||||||
image_src="/images/projects/chess-opencv.webp"
|
|
||||||
image_alt="computer vision chess bot"
|
|
||||||
position="left"
|
|
||||||
video_src="/videos/chess_opencv_demo.webm"
|
|
||||||
title="Computer Vision Chess Bot"
|
|
||||||
description={`
|
|
||||||
A script that plays against opponents on lichess. Uses
|
|
||||||
OpenCV to detect the board and pieces, and the Stockfish
|
|
||||||
chess engine to determine the best moves. Then uses
|
|
||||||
PyAutoGUI to play the moves on the browser.
|
|
||||||
`}
|
|
||||||
tags={[
|
|
||||||
{
|
|
||||||
text: "Python",
|
|
||||||
textColor: "white",
|
|
||||||
bgColor: "var(--color-python)",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: "OpenCV",
|
|
||||||
textColor: "white",
|
|
||||||
bgColor: "var(--color-opencv)",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: "PyAutoGUI",
|
|
||||||
textColor: "white",
|
|
||||||
bgColor: "black",
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
></VideoProject>
|
|
||||||
<VideoProject
|
|
||||||
image_src="/images/projects/aim-lab.webp"
|
|
||||||
image_alt="Computer Vision AimLab Bot"
|
|
||||||
position="right"
|
|
||||||
video_src="/videos/aim_lab_demo.webm"
|
|
||||||
title="Computer Vision AimLab Bot"
|
|
||||||
description={`
|
|
||||||
A script that plays AimLab, a game that helps improve your aim in FPS games. Uses OpenCV to detect the targets and win32API to move the mouse and click.
|
|
||||||
`}
|
|
||||||
tags={[
|
|
||||||
{
|
|
||||||
text: "Python",
|
|
||||||
textColor: "white",
|
|
||||||
bgColor: "var(--color-python)",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: "OpenCV",
|
|
||||||
textColor: "white",
|
|
||||||
bgColor: "var(--color-opencv)",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: "win32API",
|
|
||||||
textColor: "white",
|
|
||||||
bgColor: "var(--color-win32api)",
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
></VideoProject>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
import TaskWidget from "./TaskWidget.svelte";
|
import TaskWidget from "./TaskWidget.svelte";
|
||||||
import CoworkingGuide from "../images/projects/coworking-guide.webp";
|
import CoworkingGuide from "../images/projects/coworking-guide.webp";
|
||||||
import Wnrs from "../images/projects/wnrs.webp";
|
import Wnrs from "../images/projects/wnrs.webp";
|
||||||
import TwitchPlays from "../images/projects/twitchplays.webp";
|
import VideoProject from "./VideoProject.svelte";
|
||||||
import Project from "./Project.astro";
|
import Project from "./Project.astro";
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -37,6 +37,58 @@ import Project from "./Project.astro";
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
<VideoProject
|
||||||
|
client:visible
|
||||||
|
image_src="/images/projects/aim-lab.webp"
|
||||||
|
image_alt="Computer Vision AimLab Bot"
|
||||||
|
position="right"
|
||||||
|
video_src="/videos/aim_lab_demo.webm"
|
||||||
|
title="Computer Vision AimLab Bot"
|
||||||
|
description={`
|
||||||
|
A script that plays AimLab, a game that helps improve your aim in FPS games. Uses OpenCV to detect the targets and win32API to move the mouse and click.
|
||||||
|
`}
|
||||||
|
tags={[
|
||||||
|
{
|
||||||
|
text: "Python",
|
||||||
|
textColor: "white",
|
||||||
|
bgColor: "var(--color-python)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: "OpenCV",
|
||||||
|
textColor: "white",
|
||||||
|
bgColor: "var(--color-opencv)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: "win32API",
|
||||||
|
textColor: "white",
|
||||||
|
bgColor: "var(--color-win32api)",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
|
||||||
|
<Project
|
||||||
|
position="left"
|
||||||
|
image={Wnrs}
|
||||||
|
alt="We're not really strangers"
|
||||||
|
href="https://liyunze-coding.github.io/wnrs/"
|
||||||
|
label="Visit Site"
|
||||||
|
title="We're not really strangers"
|
||||||
|
description="This is a digital adaptation of the popular card game designed to foster meaningful connections through engaging questions and prompts. Made into a PWA for offline usage on mobile!"
|
||||||
|
tags={[
|
||||||
|
{
|
||||||
|
text: "React",
|
||||||
|
bgColor: "var(--color-react)",
|
||||||
|
textColor: "black",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: "TypeScript",
|
||||||
|
bgColor: "var(--color-typescript)",
|
||||||
|
textColor: "white",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
|
||||||
<Project
|
<Project
|
||||||
position="right"
|
position="right"
|
||||||
href="https://github.com/liyunze-coding/chat-task-tic-overlay-infinity"
|
href="https://github.com/liyunze-coding/chat-task-tic-overlay-infinity"
|
||||||
|
|
@ -86,51 +138,6 @@ import Project from "./Project.astro";
|
||||||
client:visible
|
client:visible
|
||||||
/>
|
/>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
||||||
<Project
|
|
||||||
position="left"
|
|
||||||
image={Wnrs}
|
|
||||||
alt="We're not really strangers"
|
|
||||||
href="https://liyunze-coding.github.io/wnrs/"
|
|
||||||
label="Visit Site"
|
|
||||||
title="We're not really strangers"
|
|
||||||
description="This is a digital adaptation of the popular card game designed to foster meaningful connections through engaging questions and prompts. Made into a PWA for offline usage on mobile!"
|
|
||||||
tags={[
|
|
||||||
{
|
|
||||||
text: "React",
|
|
||||||
bgColor: "var(--color-react)",
|
|
||||||
textColor: "black",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: "TypeScript",
|
|
||||||
bgColor: "var(--color-typescript)",
|
|
||||||
textColor: "white",
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
/>
|
|
||||||
<Project
|
|
||||||
position="right"
|
|
||||||
image={TwitchPlays}
|
|
||||||
alt="Twitch Plays X"
|
|
||||||
href="https://github.com/liyunze-coding/TwitchPlaysX"
|
|
||||||
title="Twitch Plays X"
|
|
||||||
description={`Allow Twitch chatters to play games such as Pokemon!
|
|
||||||
Chatters can enter messages such as "up up down down left
|
|
||||||
right B A" and the Python program will trigger the
|
|
||||||
corresponding keypresses.`}
|
|
||||||
tags={[
|
|
||||||
{
|
|
||||||
text: "win32API",
|
|
||||||
bgColor: "var(--color-win32api)",
|
|
||||||
textColor: "white",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: "Python",
|
|
||||||
bgColor: "var(--color-python)",
|
|
||||||
textColor: "white",
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
import PageLayout from "@/layouts/PageLayout.astro";
|
import PageLayout from "@/layouts/PageLayout.astro";
|
||||||
import ProjectsComponent from "../components/projects/ProjectsComponent.astro";
|
import ProjectsComponent from "../components/projects/ProjectsComponent.astro";
|
||||||
import MoreProjects from "../components/projects/MoreProjects.svelte";
|
import MoreProjects from "../components/projects/MoreProjects.astro";
|
||||||
import Footer from "../components/global/FooterComponent.astro";
|
import Footer from "../components/global/FooterComponent.astro";
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -13,7 +13,7 @@ import Footer from "../components/global/FooterComponent.astro";
|
||||||
<div id="projects" class="pt-20">
|
<div id="projects" class="pt-20">
|
||||||
<h1 class="mt-10 text-center text-5xl">Projects</h1>
|
<h1 class="mt-10 text-center text-5xl">Projects</h1>
|
||||||
<!-- other projects -->
|
<!-- other projects -->
|
||||||
<MoreProjects client:load />
|
<MoreProjects />
|
||||||
</div>
|
</div>
|
||||||
<div class="pb-20">
|
<div class="pb-20">
|
||||||
<ProjectsComponent />
|
<ProjectsComponent />
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue