diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..3722418 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,3 @@ +{ + "extends": ["next/core-web-vitals", "next/typescript"] +} diff --git a/.gitignore b/.gitignore index aef91ac..26b002a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,21 +1,40 @@ -# build output -dist/ - -# generated types -.astro/ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. # dependencies -node_modules/ +/node_modules +/.pnp +.pnp.* +.yarn/* +!.yarn/patches +!.yarn/plugins +!.yarn/releases +!.yarn/versions -# logs +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug npm-debug.log* yarn-debug.log* yarn-error.log* -pnpm-debug.log* -# environment variables -.env -.env.production +# env files (can opt-in for commiting if needed) +.env* -# macOS-specific files -.DS_Store \ No newline at end of file +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/.vscode/extensions.json b/.vscode/extensions.json deleted file mode 100644 index 22a1505..0000000 --- a/.vscode/extensions.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "recommendations": ["astro-build.astro-vscode"], - "unwantedRecommendations": [] -} diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index d642209..0000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "version": "0.2.0", - "configurations": [ - { - "command": "./node_modules/.bin/astro dev", - "name": "Development server", - "request": "launch", - "type": "node-terminal" - } - ] -} diff --git a/README.md b/README.md index 0a2ef37..e215bc4 100644 --- a/README.md +++ b/README.md @@ -1 +1,36 @@ -# vaporvee's website +This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app). + +## Getting Started + +First, run the development server: + +```bash +npm run dev +# or +yarn dev +# or +pnpm dev +# or +bun dev +``` + +Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. + +You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. + +This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. + +## Learn More + +To learn more about Next.js, take a look at the following resources: + +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. + +You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! + +## Deploy on Vercel + +The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. + +Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. diff --git a/astro.config.mjs b/astro.config.mjs deleted file mode 100644 index babf4eb..0000000 --- a/astro.config.mjs +++ /dev/null @@ -1,17 +0,0 @@ -import { defineConfig } from "astro/config"; -import minify from "astro-min"; -import metaTags from "astro-meta-tags"; -import mdx from "@astrojs/mdx"; -import lighthouse from "astro-lighthouse"; -import icon from "astro-icon"; - -// https://astro.build/config -export default defineConfig({ - integrations: [ - minify(), - metaTags(), - mdx(), - lighthouse(), - icon(), - ], -}); diff --git a/bun.lockb b/bun.lockb index 6b19378..5aa12de 100644 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/next.config.ts b/next.config.ts new file mode 100644 index 0000000..e043361 --- /dev/null +++ b/next.config.ts @@ -0,0 +1,9 @@ +import type { NextConfig } from "next"; + +const nextConfig: NextConfig = { + sassOptions: { + silenceDeprecations: ['legacy-js-api'], + } +}; + +export default nextConfig; diff --git a/package.json b/package.json index 673a81a..03861c7 100644 --- a/package.json +++ b/package.json @@ -1,48 +1,27 @@ { - "name": "vaporvees-website", - "type": "module", - "version": "0.0.1", + "name": "vaporvee-web", + "version": "0.1.0", + "private": true, "scripts": { - "dev": "astro dev", - "start": "astro dev", - "build": "astro build", - "preview": "astro preview", - "astro": "astro" + "dev": "next dev --turbopack", + "build": "next build", + "start": "next start", + "lint": "next lint" }, "dependencies": { - "@astrojs/markdown-remark": "^4.2.1", - "@astrojs/mdx": "^2.1.1", - "@expressive-code/plugin-shiki": "^0.32.4", - "@iconify-json/flat-color-icons": "^1.1.10", - "@iconify-json/logos": "^1.1.43", - "@iconify-json/prime": "^1.1.12", - "@iconify-json/simple-icons": "^1.1.109", - "@iconify-json/typcn": "^1.1.9", - "@iconify-json/vscode-icons": "^1.1.35", - "@microflash/remark-callout-directives": "^2.0.0", - "astro": "^4.2.6", - "astro-expressive-code": "^0.32.4", - "astro-icon": "^1.1.0", - "astro-lighthouse": "^0.1.3", - "astro-meta-tags": "^0.2.1", - "astro-min": "^1.1.0-dev.4", - "npx": "^3.0.0", - "rehype-autolink-headings": "^7.1.0", - "rehype-pretty-code": "^0.13.0", - "rehype-slug": "^6.0.0", - "remark-directive": "^3.0.0", - "remark-external-links": "^9.0.1", - "remark-toc": "^9.0.0", - "sass": "^1.70.0", - "shiki": "^1.0.0", - "unist-util-visit": "^5.0.0" + "next": "15.0.1", + "react": "19.0.0-rc-69d4b800-20241021", + "react-dom": "19.0.0-rc-69d4b800-20241021", + "sass": "^1.80.4" }, "devDependencies": { - "@iconify-json/mdi": "^1.1.67" - }, - "optionalDependencies": { - "@esbuild/linux-x64": "^0.20.0", - "@minify-html/node-linux-x64": "^0.15.0", - "@rollup/rollup-linux-x64-gnu": "^4.10.0" + "typescript": "^5", + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "postcss": "^8", + "tailwindcss": "^3.4.1", + "eslint": "^8", + "eslint-config-next": "15.0.1" } } diff --git a/postcss.config.mjs b/postcss.config.mjs new file mode 100644 index 0000000..1a69fd2 --- /dev/null +++ b/postcss.config.mjs @@ -0,0 +1,8 @@ +/** @type {import('postcss-load-config').Config} */ +const config = { + plugins: { + tailwindcss: {}, + }, +}; + +export default config; diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000..718d6fe Binary files /dev/null and b/public/favicon.ico differ diff --git a/public/favicon.svg b/public/favicon.svg deleted file mode 100644 index e97f6b3..0000000 --- a/public/favicon.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/public/fonts/Satoshi-Bold.ttf b/public/fonts/Satoshi-Bold.ttf deleted file mode 100644 index 00bc985..0000000 Binary files a/public/fonts/Satoshi-Bold.ttf and /dev/null differ diff --git a/public/fonts/Satoshi-Regular.ttf b/public/fonts/Satoshi-Regular.ttf deleted file mode 100644 index fe85cd6..0000000 Binary files a/public/fonts/Satoshi-Regular.ttf and /dev/null differ diff --git a/public/fonts/Tanker-Regular.ttf b/public/fonts/Tanker-Regular.ttf deleted file mode 100644 index 170a83f..0000000 Binary files a/public/fonts/Tanker-Regular.ttf and /dev/null differ diff --git a/public/img/animated/green-heart.webp b/public/img/animated/green-heart.webp deleted file mode 100644 index a47bae0..0000000 Binary files a/public/img/animated/green-heart.webp and /dev/null differ diff --git a/public/img/avatar.webp b/public/img/avatar.webp deleted file mode 100644 index 23230be..0000000 Binary files a/public/img/avatar.webp and /dev/null differ diff --git a/public/img/docs/thumbnails/discord-rpc-godot.webp b/public/img/docs/thumbnails/discord-rpc-godot.webp deleted file mode 100644 index a9e5cba..0000000 Binary files a/public/img/docs/thumbnails/discord-rpc-godot.webp and /dev/null differ diff --git a/public/img/portrait.webp b/public/img/portrait.webp deleted file mode 100644 index d93b24c..0000000 Binary files a/public/img/portrait.webp and /dev/null differ diff --git a/public/img/projects/acecore.png b/public/img/projects/acecore.png deleted file mode 100644 index 043d7c7..0000000 Binary files a/public/img/projects/acecore.png and /dev/null differ diff --git a/public/img/projects/discord-rpc.png b/public/img/projects/discord-rpc.png deleted file mode 100644 index 29c3e4e..0000000 Binary files a/public/img/projects/discord-rpc.png and /dev/null differ diff --git a/public/img/projects/sca/call.png b/public/img/projects/sca/call.png deleted file mode 100644 index fc897f7..0000000 Binary files a/public/img/projects/sca/call.png and /dev/null differ diff --git a/public/img/projects/voicenext/Home.png b/public/img/projects/voicenext/Home.png deleted file mode 100644 index 444720d..0000000 Binary files a/public/img/projects/voicenext/Home.png and /dev/null differ diff --git a/public/img/projects/voicenext/Promo.png b/public/img/projects/voicenext/Promo.png deleted file mode 100644 index b3d329b..0000000 Binary files a/public/img/projects/voicenext/Promo.png and /dev/null differ diff --git a/public/img/projects/voicenext/Register.png b/public/img/projects/voicenext/Register.png deleted file mode 100644 index 7e77a38..0000000 Binary files a/public/img/projects/voicenext/Register.png and /dev/null differ diff --git a/public/img/projects/voicenext/Settings.png b/public/img/projects/voicenext/Settings.png deleted file mode 100644 index 2de1185..0000000 Binary files a/public/img/projects/voicenext/Settings.png and /dev/null differ diff --git a/public/img/projects/voicenext/Settings2.png b/public/img/projects/voicenext/Settings2.png deleted file mode 100644 index ca7bc1b..0000000 Binary files a/public/img/projects/voicenext/Settings2.png and /dev/null differ diff --git a/public/nav_highlight.svg b/public/nav_highlight.svg deleted file mode 100644 index f45dce4..0000000 --- a/public/nav_highlight.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/src/components/DonationCallout.astro b/src/components/DonationCallout.astro deleted file mode 100644 index fb64a35..0000000 --- a/src/components/DonationCallout.astro +++ /dev/null @@ -1,18 +0,0 @@ ---- -import "../styles/donation_callout.scss"; -interface Props { - text: string; -} - -const { text } = Astro.props; ---- - -
- Green Heart -

- {text}
- -

-
diff --git a/src/components/Footer.astro b/src/components/Footer.astro deleted file mode 100644 index 42c514a..0000000 --- a/src/components/Footer.astro +++ /dev/null @@ -1,9 +0,0 @@ ---- -const year = new Date().getFullYear(); -import "../styles/footer.scss"; ---- - - diff --git a/src/components/GalaryZoom.astro b/src/components/GalaryZoom.astro deleted file mode 100644 index 48da62a..0000000 --- a/src/components/GalaryZoom.astro +++ /dev/null @@ -1,44 +0,0 @@ - - - - -
- -
diff --git a/src/components/Navbar.astro b/src/components/Navbar.astro deleted file mode 100644 index 03bf9e2..0000000 --- a/src/components/Navbar.astro +++ /dev/null @@ -1,56 +0,0 @@ ---- -const routes = { - Home: "/", - Projects: "/projects", - //Skills: "/skills", - Blog: "/blog", -}; -import "../styles/navbar.scss"; -import Logo from "../../public/favicon.svg?raw"; -import { Icon } from "astro-icon/components"; ---- - -
- -
- - - - | - Docs -
-
diff --git a/src/components/ProjectCard.astro b/src/components/ProjectCard.astro deleted file mode 100644 index 3255b17..0000000 --- a/src/components/ProjectCard.astro +++ /dev/null @@ -1,102 +0,0 @@ ---- -import SkillBadge from "./SkillBadge.astro"; -import type { SkillKey } from "../data/skills"; -interface Props { - name: string; - skills: SkillKey[]; - href?: string; - gallery?: string | string[]; - center?: true; -} -const { name, href, gallery, center, skills } = Astro.props; ---- - - - -
- -
- -

{name}


-
-
- Tools used:
- {skills.map((skill: SkillKey) => )} -

-
- { - Array.isArray(gallery) ? ( - gallery.map((src) => ( - - )) - ) : ( - - ) - } -
-
diff --git a/src/components/SkillBadge.astro b/src/components/SkillBadge.astro deleted file mode 100644 index 3432825..0000000 --- a/src/components/SkillBadge.astro +++ /dev/null @@ -1,57 +0,0 @@ ---- -import { Icon } from "astro-icon/components"; -import { skills } from "../data/skills"; -import type { SkillKey } from "../data/skills"; -interface Props { - key: SkillKey; -} -const { key } = Astro.props; ---- - - - -
- {key} - -
diff --git a/src/data/skills.ts b/src/data/skills.ts deleted file mode 100644 index e96b473..0000000 --- a/src/data/skills.ts +++ /dev/null @@ -1,133 +0,0 @@ -const skilllist = { - "React": { - iconName: "mdi:react", - url: "https://react.dev/", - color: "#60C7DE" - }, - "React Native": { - iconName: "mdi:react", - url: "https://reactnative.dev/", - color: "#60C7DE" - }, - "TypeScript": { - iconName: "mdi:language-typescript", - url: "https://github.com/topics/typescript", - color: "#3178c6" - }, - "Capacitor.js": { - iconName: "logos:capacitorjs-icon", - url: "https://capacitorjs.com/", - color: "#35A4EF" - }, - "Android": { - iconName: "mdi:android", - url: "https://android.com/", - color: "#3DDC84" - }, - "iOS": { - iconName: "mdi:apple-ios", - }, - "Vue": { - iconName: "logos:vue", - url: "https://vuejs.org/", - color: "#41b883" - }, - "Go": { - iconName: "logos:go", - url: "https://go.dev/", - color: "#00acd7" - }, - "Tauri": { - iconName: "logos:tauri", - url: "https://tauri.app/", - color: "#24c8db" - }, - "Git": { - iconName: "mdi:git", - url: "https://git-scm.com/", - color: "#de4c36" - }, - "Tailwind": { - iconName: "logos:tailwindcss-icon", - url: "https://tailwindcss.com/", - color: "#44a8b3" - }, - "Python": { - iconName: "logos:python", - url: "https://python.org/", - color: "#3572A5" - }, - "Linux": { - iconName: "flat-color-icons:linux", - }, - "C++": { - iconName: "mdi:language-cpp", - url: "https://github.com/topics/cpp?l=c%2B%2B&o", - color: "#f34b7d" - }, - "C#": { - iconName: "mdi:language-csharp", - url: "https://github.com/topics/c-sharp?l=c%23", - color: "#178600" - }, - "Godot": { - iconName: "logos:godot-icon", - url: "https://godotengine.org/", - color: "#478cbf" - }, - "Unreal Engine": { - iconName: "mdi:unreal", - url: "https://www.unrealengine.com/" - }, - "Astro": { - iconName: "vscode-icons:file-type-astro", - url: "https://astro.build/", - color: "#ff5a03" - }, - "Bun": { - iconName: "logos:bun", - color:"#FBF0DF", - url: "https://bun.sh/" - }, - "Blender": { - iconName: "logos:blender", - url: "https://blender.org/", - color: "#e87d0d" - }, - "OpenAI API": { - iconName: "simple-icons:openai", - url: "https://platform.openai.com/docs/api-reference/" - }, - "Elevenlabs API": { - iconName: "mdi:two", - url: "https://elevenlabs.io/api" - }, - "Adobe Photoshop": { - iconName: "logos:adobe-photoshop" - }, - "Adobe Illustrator": { - iconName: "logos:adobe-illustrator" - }, - "Adobe Premiere": { - iconName: "logos:adobe-premiere" - }, - "Adobe Indesign": { - iconName: "logos:adobe-indesign" - }, - "Docker":{ - iconName: "mdi:docker", - url: "https://www.docker.com/", - color: "#1d63ed" - } -} as const; - -type Skill = { - iconName: string - url?: string - color?: string -} - -type SkillKey = keyof typeof skilllist; -const skills: Record = skilllist -export { skills } -export type { SkillKey } \ No newline at end of file diff --git a/src/env.d.ts b/src/env.d.ts deleted file mode 100644 index acef35f..0000000 --- a/src/env.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -/// -/// diff --git a/src/fonts/GeistMonoVF.woff b/src/fonts/GeistMonoVF.woff new file mode 100644 index 0000000..f2ae185 Binary files /dev/null and b/src/fonts/GeistMonoVF.woff differ diff --git a/src/fonts/GeistVF.woff b/src/fonts/GeistVF.woff new file mode 100644 index 0000000..1b62daa Binary files /dev/null and b/src/fonts/GeistVF.woff differ diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro deleted file mode 100644 index 8654eca..0000000 --- a/src/layouts/Layout.astro +++ /dev/null @@ -1,39 +0,0 @@ ---- -interface Props { - title: string; - description: string; -} - -const { title } = Astro.props; -const { description } = Astro.props; -import "../styles/main.scss"; -import "../styles/callout.scss"; - -import Navbar from "../components/Navbar.astro"; -import Footer from "../components/Footer.astro"; - -import { ViewTransitions } from "astro:transitions"; ---- - - - - - - - - - - - - {title} | vaporvee's Website - - - - -
- -
-
-