diff --git a/.gitignore b/.gitignore index bc04f5e..6616851 100644 --- a/.gitignore +++ b/.gitignore @@ -132,4 +132,5 @@ dist # Configuration Files pease-portfolio/src/app/projects.json -/pease-portfolio/.vercel \ No newline at end of file +/pease-portfolio/.vercel +.vercel diff --git a/pease-portfolio/package.json b/pease-portfolio/package.json index 1ec66f1..4084431 100644 --- a/pease-portfolio/package.json +++ b/pease-portfolio/package.json @@ -22,7 +22,9 @@ "react-chrono": "^2.6.1", "react-dom": "^18", "react-file-viewer": "^1.2.1", + "react-grid-gallery": "^1.0.1", "react-iframe": "^1.8.5", + "react-image-lightbox": "^5.1.4", "react-youtube": "^10.1.0", "vercel": "^37.6.1" }, diff --git a/pease-portfolio/pnpm-lock.yaml b/pease-portfolio/pnpm-lock.yaml index a56160f..9d295b8 100644 --- a/pease-portfolio/pnpm-lock.yaml +++ b/pease-portfolio/pnpm-lock.yaml @@ -47,9 +47,15 @@ importers: react-file-viewer: specifier: ^1.2.1 version: 1.2.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@2.7.0) + react-grid-gallery: + specifier: ^1.0.1 + version: 1.0.1(react@18.3.1) react-iframe: specifier: ^1.8.5 version: 1.8.5(react@18.3.1) + react-image-lightbox: + specifier: ^5.1.4 + version: 5.1.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-youtube: specifier: ^10.1.0 version: 10.1.0(react@18.3.1) @@ -1706,6 +1712,9 @@ packages: resolution: {integrity: sha512-kJJfVbI/lZE1PZYDI5VPxp8zXPO9rtxOkhpZ0jMKha56AI9y2gGVC6bkukStQf0ka5Rh15BA5m7cCCH4jmHqkw==} engines: {node: ^8.12.0 || >=9.7.0} + exenv@1.2.2: + resolution: {integrity: sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==} + exit-on-epipe@1.0.1: resolution: {integrity: sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==} engines: {node: '>=0.8'} @@ -3037,17 +3046,39 @@ packages: react: ^16.6.3 react-dom: ^16.6.3 + react-grid-gallery@1.0.1: + resolution: {integrity: sha512-+fVd6fH9tm0W+UMgzRHET/gmzSs2/l2sGOuELLaHXMto6UhuZdscj9ILHOYe7hn0GBRUJiczMllsEs7OJz9uPA==} + peerDependencies: + react: '>=16.14.0' + react-iframe@1.8.5: resolution: {integrity: sha512-F4cQJGs3ydaG6fJWfuz9yLwOU0Trzl6kttXuUG+vYwosH8enOOFxZWEDQCSbNVO8ayjfYZeqLxEvdvcsSy4GvA==} peerDependencies: react: '>=16.x.x' + react-image-lightbox@5.1.4: + resolution: {integrity: sha512-kTiAODz091bgT7SlWNHab0LSMZAPJtlNWDGKv7pLlLY1krmf7FuG1zxE0wyPpeA8gPdwfr3cu6sPwZRqWsc3Eg==} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + peerDependencies: + react: 16.x || 17.x + react-dom: 16.x || 17.x + react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + react-lifecycles-compat@3.0.4: + resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==} + + react-modal@3.16.1: + resolution: {integrity: sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==} + engines: {node: '>=8'} + peerDependencies: + react: ^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18 + react-dom: ^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18 + react-transition-group@4.4.5: resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==} peerDependencies: @@ -3750,6 +3781,9 @@ packages: engines: {node: '>=0.8'} hasBin: true + warning@4.0.3: + resolution: {integrity: sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==} + watchpack-chokidar2@2.0.1: resolution: {integrity: sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==} @@ -5707,7 +5741,7 @@ snapshots: eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0) eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0) eslint-plugin-react: 7.35.0(eslint@8.57.0) eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0) @@ -5738,7 +5772,7 @@ snapshots: is-bun-module: 1.1.0 is-glob: 4.0.3 optionalDependencies: - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0) transitivePeerDependencies: - '@typescript-eslint/parser' - eslint-import-resolver-node @@ -5756,7 +5790,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0): + eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@4.9.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0): dependencies: array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 @@ -5923,6 +5957,8 @@ snapshots: signal-exit: 3.0.7 strip-final-newline: 2.0.0 + exenv@1.2.2: {} + exit-on-epipe@1.0.1: {} expand-brackets@2.1.4(supports-color@3.2.3): @@ -7355,15 +7391,37 @@ snapshots: transitivePeerDependencies: - webpack + react-grid-gallery@1.0.1(react@18.3.1): + dependencies: + react: 18.3.1 + react-iframe@1.8.5(react@18.3.1): dependencies: object-assign: 4.1.1 react: 18.3.1 + react-image-lightbox@5.1.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + prop-types: 15.8.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-modal: 3.16.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-is@16.13.1: {} react-is@18.3.1: {} + react-lifecycles-compat@3.0.4: {} + + react-modal@3.16.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + exenv: 1.2.2 + prop-types: 15.8.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-lifecycles-compat: 3.0.4 + warning: 4.0.3 + react-transition-group@4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@babel/runtime': 7.25.6 @@ -8182,6 +8240,10 @@ snapshots: voc@1.0.0: {} + warning@4.0.3: + dependencies: + loose-envify: 1.4.0 + watchpack-chokidar2@2.0.1(supports-color@3.2.3): dependencies: chokidar: 2.1.8(supports-color@3.2.3) diff --git a/pease-portfolio/public/images/weather/composite-1.png b/pease-portfolio/public/images/weather/composite-1.png new file mode 100644 index 0000000..6cc959c Binary files /dev/null and b/pease-portfolio/public/images/weather/composite-1.png differ diff --git a/pease-portfolio/public/images/weather/composite-2.png b/pease-portfolio/public/images/weather/composite-2.png new file mode 100644 index 0000000..2ead183 Binary files /dev/null and b/pease-portfolio/public/images/weather/composite-2.png differ diff --git a/pease-portfolio/public/images/weather/meteor1.bmp b/pease-portfolio/public/images/weather/meteor1.bmp new file mode 100644 index 0000000..e319913 Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor1.bmp differ diff --git a/pease-portfolio/public/images/weather/meteor1.jpg b/pease-portfolio/public/images/weather/meteor1.jpg new file mode 100644 index 0000000..88b9910 Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor1.jpg differ diff --git a/pease-portfolio/public/images/weather/meteor10.jpg b/pease-portfolio/public/images/weather/meteor10.jpg new file mode 100644 index 0000000..9eeaece Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor10.jpg differ diff --git a/pease-portfolio/public/images/weather/meteor11.bmp b/pease-portfolio/public/images/weather/meteor11.bmp new file mode 100644 index 0000000..3da0653 Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor11.bmp differ diff --git a/pease-portfolio/public/images/weather/meteor2.jpg b/pease-portfolio/public/images/weather/meteor2.jpg new file mode 100644 index 0000000..60c90b6 Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor2.jpg differ diff --git a/pease-portfolio/public/images/weather/meteor3.jpg b/pease-portfolio/public/images/weather/meteor3.jpg new file mode 100644 index 0000000..c727418 Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor3.jpg differ diff --git a/pease-portfolio/public/images/weather/meteor4.jpg b/pease-portfolio/public/images/weather/meteor4.jpg new file mode 100644 index 0000000..e3d03ca Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor4.jpg differ diff --git a/pease-portfolio/public/images/weather/meteor6.jpg b/pease-portfolio/public/images/weather/meteor6.jpg new file mode 100644 index 0000000..9c81071 Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor6.jpg differ diff --git a/pease-portfolio/public/images/weather/meteor7.bmp b/pease-portfolio/public/images/weather/meteor7.bmp new file mode 100644 index 0000000..9819b1f Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor7.bmp differ diff --git a/pease-portfolio/public/images/weather/meteor7.jpg b/pease-portfolio/public/images/weather/meteor7.jpg new file mode 100644 index 0000000..ab4b8ae Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor7.jpg differ diff --git a/pease-portfolio/public/images/weather/meteor8.jpg b/pease-portfolio/public/images/weather/meteor8.jpg new file mode 100644 index 0000000..39b5ff7 Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor8.jpg differ diff --git a/pease-portfolio/public/images/weather/meteor9.jpg b/pease-portfolio/public/images/weather/meteor9.jpg new file mode 100644 index 0000000..025a49b Binary files /dev/null and b/pease-portfolio/public/images/weather/meteor9.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass10.jpg b/pease-portfolio/public/images/weather/satpass10.jpg new file mode 100644 index 0000000..d0a454b Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass10.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass11.jpg b/pease-portfolio/public/images/weather/satpass11.jpg new file mode 100644 index 0000000..0ef4586 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass11.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass13.jpg b/pease-portfolio/public/images/weather/satpass13.jpg new file mode 100644 index 0000000..807e889 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass13.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass14.jpg b/pease-portfolio/public/images/weather/satpass14.jpg new file mode 100644 index 0000000..28365ed Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass14.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass15.jpg b/pease-portfolio/public/images/weather/satpass15.jpg new file mode 100644 index 0000000..3709690 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass15.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass16.jpg b/pease-portfolio/public/images/weather/satpass16.jpg new file mode 100644 index 0000000..d2f1595 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass16.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass17.jpg b/pease-portfolio/public/images/weather/satpass17.jpg new file mode 100644 index 0000000..580cd92 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass17.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass18.jpg b/pease-portfolio/public/images/weather/satpass18.jpg new file mode 100644 index 0000000..1944809 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass18.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass19.jpg b/pease-portfolio/public/images/weather/satpass19.jpg new file mode 100644 index 0000000..32e5bc2 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass19.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass20.jpg b/pease-portfolio/public/images/weather/satpass20.jpg new file mode 100644 index 0000000..99e83ac Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass20.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass21.jpg b/pease-portfolio/public/images/weather/satpass21.jpg new file mode 100644 index 0000000..6568844 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass21.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass22.jpg b/pease-portfolio/public/images/weather/satpass22.jpg new file mode 100644 index 0000000..1dab1b1 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass22.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass27(resampled).jpg b/pease-portfolio/public/images/weather/satpass27(resampled).jpg new file mode 100644 index 0000000..4c1ded9 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass27(resampled).jpg differ diff --git a/pease-portfolio/public/images/weather/satpass27.jpg b/pease-portfolio/public/images/weather/satpass27.jpg new file mode 100644 index 0000000..4c1ded9 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass27.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass3.jpg b/pease-portfolio/public/images/weather/satpass3.jpg new file mode 100644 index 0000000..06accdc Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass3.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass30.jpg b/pease-portfolio/public/images/weather/satpass30.jpg new file mode 100644 index 0000000..5f74ec1 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass30.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass31.jpg b/pease-portfolio/public/images/weather/satpass31.jpg new file mode 100644 index 0000000..70c0009 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass31.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass4.jpg b/pease-portfolio/public/images/weather/satpass4.jpg new file mode 100644 index 0000000..3cdab10 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass4.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass5.jpg b/pease-portfolio/public/images/weather/satpass5.jpg new file mode 100644 index 0000000..e659771 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass5.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass6.jpg b/pease-portfolio/public/images/weather/satpass6.jpg new file mode 100644 index 0000000..01068b7 Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass6.jpg differ diff --git a/pease-portfolio/public/images/weather/satpass7.jpg b/pease-portfolio/public/images/weather/satpass7.jpg new file mode 100644 index 0000000..02b8c2e Binary files /dev/null and b/pease-portfolio/public/images/weather/satpass7.jpg differ diff --git a/pease-portfolio/src/app/about-me/page.js b/pease-portfolio/src/app/about-me/page.js new file mode 100644 index 0000000..81e3daa --- /dev/null +++ b/pease-portfolio/src/app/about-me/page.js @@ -0,0 +1,8 @@ +export default function Page(){ + + return ( +
+ About Me +
+ ) +} \ No newline at end of file diff --git a/pease-portfolio/src/app/page.js b/pease-portfolio/src/app/page.js index edc265c..1a7ad04 100644 --- a/pease-portfolio/src/app/page.js +++ b/pease-portfolio/src/app/page.js @@ -84,5 +84,4 @@ function Home() { ); } - export default Home; \ No newline at end of file diff --git a/pease-portfolio/src/app/projects.json b/pease-portfolio/src/app/projects.json index 929ad92..20bd074 100644 --- a/pease-portfolio/src/app/projects.json +++ b/pease-portfolio/src/app/projects.json @@ -48,12 +48,21 @@ "hasGithub": false, "hasCustomPage": false }, + "Calculator Programming": { + "description": "My first introduction to programming was by way of the Texas Instruments series of calculators. These taught me fundamentals in programming with languages such as TI-BASIC, ICE, and Assembly.", + "gitea_user": "npease", + "gitea_repo": "ti", + "isPublic": false, + "hasGitea": false, + "hasGithub": "Satellite-Imagery-Uploads", + "hasCustomPage": false + }, "Weather Satellite Imagery": { "description": "The Weather Satellite Imagery project is a project where I constructed and tested various antennas and software to receive and decode weather satellite imagery from NOAA and Meteor satellites. Various results from these transmissions are availiable online at this website!", "isPublic": true, "hasGitea": false, "hasGithub": true, - "hasCustomPage": false, + "hasCustomPage": "weatherimg", "github_user": "LAX18", "github_repo": "Satellite-Imagery-Uploads" } diff --git a/pease-portfolio/src/app/projects/custom/weatherimg/page.js b/pease-portfolio/src/app/projects/custom/weatherimg/page.js new file mode 100644 index 0000000..8cfbf8c --- /dev/null +++ b/pease-portfolio/src/app/projects/custom/weatherimg/page.js @@ -0,0 +1,44 @@ +"use client" +import { Gallery } from "react-grid-gallery"; +import { useState } from "react"; +import Lightbox from "react-image-lightbox"; +import "react-image-lightbox/style.css"; + +export default function Page() { + var images = [{ + src: "/images/weather/meteor1.jpg", + width: 200, + height: 200, + }] + + const [index, setIndex] = useState(-1); + const currentImage = images[index]; + const nextIndex = (index + 1) % images.length; + const nextImage = images[nextIndex] || currentImage; + const prevIndex = (index + images.length - 1) % images.length; + const prevImage = images[prevIndex] || currentImage; + + const handleClick = (newIndex) => {setIndex(newIndex);console.log(images[newIndex])}; + const handleClose = () => setIndex(-1); + const handleMovePrev = () => setIndex(prevIndex); + const handleMoveNext = () => setIndex(nextIndex); + return ( +
+ + {!!currentImage && ( + + )} +
+ ) +} \ No newline at end of file diff --git a/pease-portfolio/src/app/projects/page.js b/pease-portfolio/src/app/projects/page.js index f350694..1273072 100644 --- a/pease-portfolio/src/app/projects/page.js +++ b/pease-portfolio/src/app/projects/page.js @@ -1,6 +1,7 @@ import Image from "next/image" import ProjectsListJSON from "../projects.json" + function ProjectHeader() { return (
@@ -39,7 +40,7 @@ function Project({name, description, imgURL}) { ); } else { return ( -
+