diff --git a/public/fallback-6sT0rpDxhI2eudmCWCd9w.js b/public/fallback-a7KM73030O40tzcX6icA5.js similarity index 100% rename from public/fallback-6sT0rpDxhI2eudmCWCd9w.js rename to public/fallback-a7KM73030O40tzcX6icA5.js diff --git a/public/images/projects/APIList.png b/public/images/projects/APIList.png new file mode 100644 index 000000000..44405c223 Binary files /dev/null and b/public/images/projects/APIList.png differ diff --git a/public/images/projects/Prework.png b/public/images/projects/Prework.png new file mode 100644 index 000000000..c3eb2dce7 Binary files /dev/null and b/public/images/projects/Prework.png differ diff --git a/public/images/projects/VWCApp.png b/public/images/projects/VWCApp.png new file mode 100644 index 000000000..bb3c076da Binary files /dev/null and b/public/images/projects/VWCApp.png differ diff --git a/public/images/projects/VetsAI.png b/public/images/projects/VetsAI.png new file mode 100644 index 000000000..2e832c782 Binary files /dev/null and b/public/images/projects/VetsAI.png differ diff --git a/public/images/projects/WebCurriculum.png b/public/images/projects/WebCurriculum.png new file mode 100644 index 000000000..0f5fa0d82 Binary files /dev/null and b/public/images/projects/WebCurriculum.png differ diff --git a/public/images/projects/WindowsDevGuide.png b/public/images/projects/WindowsDevGuide.png new file mode 100644 index 000000000..3ba56943d Binary files /dev/null and b/public/images/projects/WindowsDevGuide.png differ diff --git a/src/data/projects/api-list.json b/src/data/projects/api-list.json new file mode 100644 index 000000000..9b358d84f --- /dev/null +++ b/src/data/projects/api-list.json @@ -0,0 +1,25 @@ +{ + "index": 5, + "name": "API List", + "headline": "Curated Collection of Fun and Free APIs for Learning JavaScript", + "long_description": [ + "The API List is a curated collection of interesting and free APIs designed to help learners practice and enhance their JavaScript skills. It offers a diverse range of APIs across various categories, including AI, art, books, code repositories, food, gaming, government data, health, language, open-source projects, and more.", + "Key features include:", + "- **Diverse Categories**: Explore APIs in categories such as AI, art, books, code repositories, food, gaming, government data, health, language, open-source projects, and miscellaneous collections.", + "- **Free Access**: All listed APIs are free to use, providing ample opportunities for hands-on practice.", + "- **Learning Resource**: Ideal for beginners and intermediate learners looking to apply JavaScript in real-world scenarios.", + "- **Community Contribution**: Open for contributions, allowing users to add new APIs and share valuable resources with the community." + ], + "technologies": [ + "JavaScript", + "APIs", + "Web Development" + ], + "owner": "Vets-Who-Code", + "repo": "api-list", + "live_url": null, + "thumbnail": { + "src": "/images/projects/APIList.png", + "alt": "API List Project Thumbnail" + } +} diff --git a/src/data/projects/prework.json b/src/data/projects/prework.json new file mode 100644 index 000000000..28b8d89bc --- /dev/null +++ b/src/data/projects/prework.json @@ -0,0 +1,29 @@ +{ + "index": 6, + "name": "Prework", + "headline": "Foundational Prework for Prospective Vets Who Code Participants", + "long_description": [ + "The Prework project is a meticulously crafted program designed to introduce prospective Vets Who Code (VWC) participants to essential tools, technologies, and fundamental concepts in software engineering. This preparatory course is structured to ensure that learners are well-equipped for the upcoming VWC curriculum.", + "Key components of the Prework include:", + "- **Command Line Basics**: Understanding the command line interface and its operations.", + "- **Code Editor Setup**: Guidance on setting up and utilizing code editors effectively.", + "- **HTML & CSS Fundamentals**: Building and styling web pages using HTML and CSS.", + "- **JavaScript Introduction**: Writing and integrating JavaScript to enhance web interactivity.", + "- **Capstone Project**: A culminating challenge that allows learners to apply their acquired skills in a practical project." + ], + "technologies": [ + "Command Line", + "Git", + "GitHub", + "HTML", + "CSS", + "JavaScript" + ], + "owner": "Vets-Who-Code", + "repo": "Prework", + "live_url": null, + "thumbnail": { + "src": "/images/projects/Prework.png", + "alt": "Prework Project Thumbnail" + } +} diff --git a/src/data/projects/vets-ai.json b/src/data/projects/vets-ai.json index 4502f6fed..978a33ede 100644 --- a/src/data/projects/vets-ai.json +++ b/src/data/projects/vets-ai.json @@ -20,7 +20,7 @@ "repo": "VetsAI", "live_url": null, "thumbnail": { - "src": "https://res.cloudinary.com/vetswhocode/image/upload/f_auto,q_auto/v1688176572/command-line_azvdf6.jpg", + "src": "/images/projects/VetsAI.png", "alt": "VetsAI Project Thumbnail" } } diff --git a/src/data/projects/vets-who-code-app.json b/src/data/projects/vets-who-code-app.json index d17fa81bf..6d45c377d 100644 --- a/src/data/projects/vets-who-code-app.json +++ b/src/data/projects/vets-who-code-app.json @@ -3,9 +3,11 @@ "name": "Vets Who Code App", "headline": "Empowering Veterans Through a Communal Coding Platform", "long_description": [ - "The Vets Who Code App serves as a communal codebase where military veterans and their spouses can enhance their coding skills. This production-grade application is continuously evolving to address the unique needs of the veteran community.", - "Built with a modern tech stack, the app offers hands-on experience in web development, enabling users to learn by doing. It provides valuable tools and features that mimic real-world challenges, fostering an environment of growth and learning.", - "The project emphasizes collaboration, mentorship, and practical application of coding skills, preparing veterans for successful careers in the tech industry." + "The Vets Who Code App is a communal platform built to empower military veterans and their spouses by enhancing their coding skills. This production-grade application evolves continuously to meet the unique needs of the veteran community, providing real-world coding experience.", + "Key features of the application include:", + "- **Community-Driven Development**: A collaborative codebase that allows contributors to build and refine features, fostering growth and mentorship.", + "- **Modern Tech Stack**: Developed with Next.js, TypeScript, and other cutting-edge technologies to deliver a robust and scalable platform.", + "- **Practical Learning Environment**: Offers tools and challenges that mimic real-world scenarios, enabling users to learn by doing and preparing them for careers in the tech industry." ], "technologies": [ "Next.js", @@ -21,7 +23,7 @@ "repo": "vets-who-code-app", "live_url": "https://vetswhocode.io/", "thumbnail": { - "src": "https://res.cloudinary.com/vetswhocode/image/upload/f_auto,q_auto/v1688176572/command-line_azvdf6.jpg", + "src": "/images/projects/VWCApp.png", "alt": "Vets Who Code App Thumbnail" } } diff --git a/src/data/projects/web-curriculum.json b/src/data/projects/web-curriculum.json index 77bf792ac..c0a87da41 100644 --- a/src/data/projects/web-curriculum.json +++ b/src/data/projects/web-curriculum.json @@ -24,7 +24,7 @@ "repo": "web-curriculum", "live_url": null, "thumbnail": { - "src": "https://res.cloudinary.com/vetswhocode/image/upload/f_auto,q_auto/v1688176572/command-line_azvdf6.jpg", + "src": "/images/projects/WebCurriculum.png", "alt": "Web Curriculum Thumbnail" } } diff --git a/src/data/projects/windows-dev-setup-guide.json b/src/data/projects/windows-dev-setup-guide.json index c7b2a18ce..61fcbf4b2 100644 --- a/src/data/projects/windows-dev-setup-guide.json +++ b/src/data/projects/windows-dev-setup-guide.json @@ -24,7 +24,7 @@ "repo": "windows-dev-guide", "live_url": null, "thumbnail": { - "src": "https://res.cloudinary.com/vetswhocode/image/upload/f_auto,q_auto/v1688176572/command-line_azvdf6.jpg", + "src": "/images/projects/WindowsDevGuide.png", "alt": "Windows Dev Guide Thumbnail" } } diff --git a/src/pages/projects.tsx b/src/pages/projects.tsx index 4ec4c6643..caae09fce 100644 --- a/src/pages/projects.tsx +++ b/src/pages/projects.tsx @@ -2,14 +2,14 @@ import type { GetStaticProps, NextPage } from "next"; import SEO from "@components/seo/page-seo"; import Layout01 from "@layout/layout-01"; import Breadcrumb from "@components/breadcrumb"; -import { VWCProject } from "@utils/types"; +import { VWCContributor, VWCProject, VWCProjectRepo } from "@utils/types"; import { VWCGrid } from "@components/vwc-grid"; import { VWCGridCard } from "@components/vwc-card"; import * as Dialog from "@radix-ui/react-dialog"; import { useState } from "react"; import { AnimatePresence, motion } from "motion/react"; import { getProjectData } from "../lib/project"; -import { CircleX, Star, CircleDot, Eye, GitFork } from "lucide-react"; +import { Star, CircleDot, Eye, GitFork, XIcon } from "lucide-react"; import clsx from "clsx"; import Link from "next/link"; import MarkdownRenderer from "@components/markdown-renderer"; @@ -30,6 +30,98 @@ const TechStack = ({ techStack }: TechStackProps) => { ); }; +interface RepoStatsProps { + repo: VWCProjectRepo; +} + +const RepoStats = ({ repo }: RepoStatsProps) => { + return ( + <> + {/* Repo stats */} +

Statistics

+
+ {/* Github Stars */} +
+
+ {repo.stargazers_count} +
+
+ +
Stars
+
+
+ {/* Github Issues */} +
+
+ {repo.open_issues_count} +
+
+ +
Issues
+
+
+ {/* Github Watching */} +
+
+ {repo.subscribers_count} +
+
+ +
Watching
+
+
+ {/* Github Forks */} +
+
+ {repo.forks_count} +
+
+ +
Forks
+
+
+
+ + ); +}; + +interface TopContributorsProps { + contributors: VWCContributor[]; +} + +const TopContributors = ({ contributors }: TopContributorsProps) => { + return ( + <> +

Top Contributors

+
+ {contributors.map((contributor) => { + return ( + +
+ {contributor.name} +
+
+
{contributor.name}
+
@{contributor.login}
+
+ + ); + })} +
+ + ); +}; + interface ProjectModalProps { project: VWCProject; className?: string; @@ -55,83 +147,10 @@ const ProjectDetailModal = ({ project, className }: ProjectModalProps) => { src={project.details.thumbnail.src} alt={project.details.thumbnail.alt} draggable="false" - className="tw-w-full md:tw-w-fit" + className="tw-w-full tw-rounded-md tw-drop-shadow-lg" /> - - {/* Repo stats */} -

Statistics

-
- {/* Github Stars */} -
-
- {project.repo.stargazers_count} -
-
- -
Stars
-
-
- {/* Github Issues */} -
-
- {project.repo.open_issues_count} -
-
- -
Issues
-
-
- {/* Github Watching */} -
-
- {project.repo.subscribers_count} -
-
- -
Watching
-
-
- {/* Github Forks */} -
-
- {project.repo.forks_count} -
-
- -
Forks
-
-
-
-

Top Contributors

-
- {project.repo.contributors.map((contributor) => { - return ( - -
- {contributor.name} -
-
-
- {contributor.name} -
-
- @{contributor.login} -
-
- - ); - })} -
+ +
{ { }} transition={{ bounce: false, duration: 0.3 }} > - - + +