From bef7bfad876fb37f6e337a699174c499c43abf33 Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Thu, 18 Sep 2025 01:41:42 -0400 Subject: Revamped project page; Switch to React; Updated pkgs --- src/components/3DModels.jsx | 25 ++++++++++++++++++ src/components/BlogCommentsForm.jsx | 1 - src/components/FetchMessages.jsx | 2 +- src/components/FormHandling.jsx | 2 +- src/components/GuestbookForm.jsx | 1 - src/components/Navbar.svelte | 2 +- src/data/models.json | 8 ++++++ src/data/webarchive.json | 10 +++++++ src/images/snug_cup.png | Bin 0 -> 2177091 bytes src/layouts/Default.astro | 7 ++--- src/pages/archive/index.astro | 21 +++++++++++++++ src/pages/index.astro | 9 +------ src/pages/privacy.md | 50 +++++++++++++++++++++++++++++++++++ src/pages/projects.astro | 42 ----------------------------- src/pages/projects/3d.astro | 46 ++++++++++++++++++++++++++++++++ src/pages/projects/index.astro | 30 +++++++++++++++++++++ src/pages/projects/programming.astro | 42 +++++++++++++++++++++++++++++ src/styles/Page.css | 2 +- src/styles/cards.css | 2 ++ src/styles/index.css | 1 + 20 files changed, 244 insertions(+), 59 deletions(-) create mode 100644 src/components/3DModels.jsx create mode 100644 src/data/models.json create mode 100644 src/data/webarchive.json create mode 100755 src/images/snug_cup.png create mode 100644 src/pages/archive/index.astro delete mode 100644 src/pages/projects.astro create mode 100644 src/pages/projects/3d.astro create mode 100644 src/pages/projects/index.astro create mode 100644 src/pages/projects/programming.astro (limited to 'src') diff --git a/src/components/3DModels.jsx b/src/components/3DModels.jsx new file mode 100644 index 0000000..4d8507e --- /dev/null +++ b/src/components/3DModels.jsx @@ -0,0 +1,25 @@ +import { Canvas, useLoader } from "@react-three/fiber"; +import { OrbitControls } from "@react-three/drei"; +import { GLTFLoader } from "three/examples/jsm/loaders/GLTFLoader"; + +const Model = ({ model, scale }) => { + const gltf = useLoader(GLTFLoader, model); + return ( + <> + + + ); +}; + +export default function ThreeJSModels({ modelName, scale = 2 }) { + return ( +
+ + + + + + +
+ ) +} diff --git a/src/components/BlogCommentsForm.jsx b/src/components/BlogCommentsForm.jsx index d0c585c..20e4748 100644 --- a/src/components/BlogCommentsForm.jsx +++ b/src/components/BlogCommentsForm.jsx @@ -1,4 +1,3 @@ -import { h } from 'preact'; import withFormHandling from './FormHandling'; import '../styles/Form.css'; diff --git a/src/components/FetchMessages.jsx b/src/components/FetchMessages.jsx index aa6f261..0a7eea3 100644 --- a/src/components/FetchMessages.jsx +++ b/src/components/FetchMessages.jsx @@ -1,4 +1,4 @@ -import { Component } from 'preact'; +import { Component } from 'react'; const withMessages = (WrappedComponent, apiEndpoint, FormComponent) => { return class extends Component { diff --git a/src/components/FormHandling.jsx b/src/components/FormHandling.jsx index 8f7f688..5210bdf 100644 --- a/src/components/FormHandling.jsx +++ b/src/components/FormHandling.jsx @@ -1,4 +1,4 @@ -import { Component } from 'preact'; +import { Component } from 'react'; import { marked } from 'marked'; import DOMPurify from 'dompurify'; diff --git a/src/components/GuestbookForm.jsx b/src/components/GuestbookForm.jsx index 4e06a27..7e47b5e 100644 --- a/src/components/GuestbookForm.jsx +++ b/src/components/GuestbookForm.jsx @@ -1,4 +1,3 @@ -import { h } from 'preact'; import withFormHandling from './FormHandling'; import '../styles/Form.css'; diff --git a/src/components/Navbar.svelte b/src/components/Navbar.svelte index 3211799..b90a90e 100644 --- a/src/components/Navbar.svelte +++ b/src/components/Navbar.svelte @@ -107,10 +107,10 @@ diff --git a/src/data/models.json b/src/data/models.json new file mode 100644 index 0000000..8d71642 --- /dev/null +++ b/src/data/models.json @@ -0,0 +1,8 @@ +[ + { + "name": "Snug Cup", + "description": "A cup for a project at school.", + "model": "/models/snug_cup_model.glb", + "fallback": "/images/snug_cup.png" + } +] diff --git a/src/data/webarchive.json b/src/data/webarchive.json new file mode 100644 index 0000000..9a6b1bb --- /dev/null +++ b/src/data/webarchive.json @@ -0,0 +1,10 @@ +[ + { + "name": "First Website", + "description": "Created by my dad using iFrames.", + "type": "personal" + }, + { + "name": "alee14.ga" + } +] diff --git a/src/images/snug_cup.png b/src/images/snug_cup.png new file mode 100755 index 0000000..cd6f7ae Binary files /dev/null and b/src/images/snug_cup.png differ diff --git a/src/layouts/Default.astro b/src/layouts/Default.astro index 95ceeaf..368f089 100644 --- a/src/layouts/Default.astro +++ b/src/layouts/Default.astro @@ -5,6 +5,7 @@ interface Props { } const { title = "Andrew Lee", description = "Andrew Lee Website" } = Astro.props; +import { ClientRouter } from "astro:transitions"; import Navbar from '../components/Navbar.svelte'; const date = new Date(); --- @@ -40,15 +41,15 @@ const date = new Date(); - + {title} -
+
-

Made with {Astro.generator} and Hosted on Vercel

+

Made with Astro and Hosted on Vercel

Copyright © {date.getFullYear()} Andrew Lee. View source code.

diff --git a/src/pages/archive/index.astro b/src/pages/archive/index.astro new file mode 100644 index 0000000..7a23d95 --- /dev/null +++ b/src/pages/archive/index.astro @@ -0,0 +1,21 @@ +--- +import Page from "../../layouts/Page.astro"; +import "../../styles/cards.css"; +--- + +
+

Personal

+
+
+

First website

+

Created by my dad using iFrames

+ 2013 +
+
+

alee14.ga

+

My first website that I made using Bootstrap 3 with a template

+ 2017 +
+
+
+
diff --git a/src/pages/index.astro b/src/pages/index.astro index e7cc46d..d109080 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -37,7 +37,7 @@ const featuredProjects = projects.filter(project => project.featured);

21 Years Old

-

Living in Montreal, Quebec, Canada

+

Montreal, Quebec, Canada

@@ -90,13 +90,6 @@ const featuredProjects = projects.filter(project => project.featured);
  • RAM: 4 GB
  • Storage: 206 GB
  • -

    Vultr (Web Server)

    -
      -
    • OS: Ubuntu Server 24.04 LTS
    • -
    • CPU: Intel Xeon Processor (Skylake, IBRS)
    • -
    • RAM: 1 GB
    • -
    • Storage: 25 GB (and 100 GB for Block Storage)
    • -

    Proxmox

    • Model: Lenovo ThinkCentre M800
    • diff --git a/src/pages/privacy.md b/src/pages/privacy.md index e69de29..e81296a 100644 --- a/src/pages/privacy.md +++ b/src/pages/privacy.md @@ -0,0 +1,50 @@ +--- +title: Privacy Policy +description: This policy covers any services provided under alee14.me, including websites, applications, and tools we develop. +layout: '../layouts/PageMarkdown.astro' +--- +# Privacy Policy +Last updated: April 2, 2024 (EDT) + +## Introduction +Privacy is a human right. If you have any concerns or complaints about how we handle privacy, feel free to reach out at privacy@alee14.me. + +## Services We Provide +This policy covers any services provided under alee14.me, including websites, applications, and tools we develop. Below are specific policies for different services. + +### AleeBot (Discord Bot) +**Information Collected:** +- User IDs (for personal settings & command usage) +- Server IDs (to store bot settings & command usage) + +**How We Use It:** +- To provide bot features +- To store preferences per server +- To store preferences per user +- To improve bot performance + +**Opting Out:** +- Removing AleeBot from a server will automatically delete all settings related to that server. +- If you want personal data removed, contact us. + +### Websites & Other Applications +**Information Collected:** +- Basic analytics (e.g., visitor count, page interactions) +- User-submitted content (if applicable) + +**How We Use It:** +- To analyze website performance +- To ensure proper functionality + +## General Data Practices +We don’t collect personal information like your real name, address, or payment details. Data is only used to operate and improve services. + +## Data Retention +We only keep data as long as it’s needed for the service. If you want your data removed, contact us. + +## Future Changes +We may update this policy as we add new services. Any significant changes will be posted here. + +## Contact +For any questions, reach out at privacy@alee14.me. + diff --git a/src/pages/projects.astro b/src/pages/projects.astro deleted file mode 100644 index 80bc97c..0000000 --- a/src/pages/projects.astro +++ /dev/null @@ -1,42 +0,0 @@ ---- -import Page from "../layouts/Page.astro"; -import projects from "../data/projects.json"; -import "../styles/cards.css"; -import GitHubProjects from "../components/GitHubProjects.svelte"; - ---- - -
      -
      - { - projects.map((project) => { - return ( -
      -

      {project.name}

      -

      {project.description}

      -
      - {project.links.map((link) => { - return ( - {link.name} - ) - })} -
      -
      - ) - }) - } -
      -

      Andrew Lee GitHub Repositories

      - -

      AleeCorp/Alee Productions GitHub Repositories

      - -
      -
      - - diff --git a/src/pages/projects/3d.astro b/src/pages/projects/3d.astro new file mode 100644 index 0000000..8f9a06d --- /dev/null +++ b/src/pages/projects/3d.astro @@ -0,0 +1,46 @@ +--- +import Page from "../../layouts/Page.astro"; +import "../../styles/cards.css"; +import ThreeJSModels from "../../components/3DModels.jsx"; +--- + +
      +
      +
      +

      Test

      +

      Description

      + +
      + Download + Licensed with (license) +
      +
      +
      +

      Test

      +

      Description

      + +
      + Download + Licensed with (license) +
      +
      +
      +

      Test

      +

      Description

      + +
      + Download + Licensed with (license) +
      +
      +
      +
      +
      + + diff --git a/src/pages/projects/index.astro b/src/pages/projects/index.astro new file mode 100644 index 0000000..9a2dbc7 --- /dev/null +++ b/src/pages/projects/index.astro @@ -0,0 +1,30 @@ +--- +import Page from "../../layouts/Page.astro"; +import "../../styles/cards.css"; +--- + +
      +
      +
      +

      3D Models

      +

      Things I made on Blender

      +
      +
      +

      Programming

      +

      Things I programmed

      +
      +
      +

      Website Archive

      +

      Websites I created

      +
      +
      +
      +
      + + diff --git a/src/pages/projects/programming.astro b/src/pages/projects/programming.astro new file mode 100644 index 0000000..2c5d073 --- /dev/null +++ b/src/pages/projects/programming.astro @@ -0,0 +1,42 @@ +--- +import Page from "../../layouts/Page.astro"; +import projects from "../../data/projects.json"; +import "../../styles/cards.css"; +import GitHubProjects from "../../components/GitHubProjects.svelte"; + +--- + +
      +
      + { + projects.map((project) => { + return ( +
      +

      {project.name}

      +

      {project.description}

      +
      + {project.links.map((link) => { + return ( + {link.name} + ) + })} +
      +
      + ) + }) + } +
      +

      Andrew Lee GitHub Repositories

      + +

      AleeCorp/Alee Productions GitHub Repositories

      + +
      +
      + + diff --git a/src/styles/Page.css b/src/styles/Page.css index 59aea44..64b28c7 100644 --- a/src/styles/Page.css +++ b/src/styles/Page.css @@ -41,4 +41,4 @@ h2.header-text { to { opacity: 0; } - } \ No newline at end of file + } diff --git a/src/styles/cards.css b/src/styles/cards.css index 12e5a3f..7376a54 100644 --- a/src/styles/cards.css +++ b/src/styles/cards.css @@ -1,4 +1,5 @@ .card h1 { + font-size: 1.5em; margin-top: 2px; margin-bottom: 2px; } @@ -14,6 +15,7 @@ .card { background-color: #3B513B; + drop-shadow(2px 3px 5px black); padding: 1.2em; border-radius: 20px; gap: 0.5em; diff --git a/src/styles/index.css b/src/styles/index.css index 0404e7c..f4e5191 100644 --- a/src/styles/index.css +++ b/src/styles/index.css @@ -50,6 +50,7 @@ } .box h1 { + font-size: 1.7em; margin-top: 0.2em; } -- cgit v1.2.3