Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add project links #104

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
625 changes: 321 additions & 304 deletions package-lock.json

Large diffs are not rendered by default.

27 changes: 25 additions & 2 deletions src/app/components/Resume/ResumePDF/ResumePDFProject.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ import {
} from "components/Resume/ResumePDF/common";
import { styles, spacing } from "components/Resume/ResumePDF/styles";
import type { ResumeProject } from "lib/redux/types";
import Link from "next/link";
import { LinkIcon } from "./common/ResumePDFIcon";

export const ResumePDFProject = ({
heading,
Expand All @@ -18,15 +20,36 @@ export const ResumePDFProject = ({
}) => {
return (
<ResumePDFSection themeColor={themeColor} heading={heading}>
{projects.map(({ project, date, descriptions }, idx) => (
{projects.map(({ project, date, descriptions, projectLink }, idx) => (
<View key={idx}>
<View
style={{
...styles.flexRowBetween,
marginTop: spacing["0.5"],
}}
>
<ResumePDFText bold={true}>{project}</ResumePDFText>
<View
style={{
...styles.flexRow,
alignItems: "center",
gap: spacing["1"],
}}
>
<ResumePDFText bold={true}>
<Link
href={projectLink}
style={{
color: "inherit",
textDecorationLine: "none",
}}
target="_blank"
rel="noopener noreferrer"
>
{projectLink ? <LinkIcon /> : <></>}
{project}
</Link>
</ResumePDFText>
</View>
<ResumePDFText>{date}</ResumePDFText>
</View>
<View style={{ ...styles.flexCol, marginTop: spacing["0.5"] }}>
Expand Down
18 changes: 18 additions & 0 deletions src/app/components/Resume/ResumePDF/common/ResumePDFIcon.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ const GITHUB_PATH_D =
"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z";
const LINKEDIN_PATH_D =
"M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z";
const LINK_PATH_D =
"M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622 1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244";
const TYPE_TO_PATH_D = {
email: EMAIL_PATH_D,
phone: PHONE_PATH_D,
Expand Down Expand Up @@ -65,3 +67,19 @@ const SVGIcon = ({ pathD }: { pathD: string }) => (
<path d={pathD} />
</svg>
);

export const LinkIcon = () => {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke-width="1.5"
stroke="gray"
height="12"
width="12"
>
<path d={LINK_PATH_D} />
</svg>
);
};
10 changes: 9 additions & 1 deletion src/app/components/ResumeForm/ProjectsForm.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export const ProjectsForm = () => {

return (
<Form form="projects" addButtonText="Add Project">
{projects.map(({ project, date, descriptions }, idx) => {
{projects.map(({ project, date, descriptions, projectLink }, idx) => {
const handleProjectChange = (
...[
field,
Expand Down Expand Up @@ -61,6 +61,14 @@ export const ProjectsForm = () => {
onChange={handleProjectChange}
labelClassName="col-span-full"
/>
<Input
name="projectLink"
label="Project Link"
placeholder="Project deployed URL"
value={projectLink}
onChange={handleProjectChange}
labelClassName="col-span-full"
/>
</FormSection>
);
})}
Expand Down
1 change: 1 addition & 0 deletions src/app/home/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ export const END_HOME_RESUME: Resume = {
descriptions: [
"Created and launched a free resume builder web app that allows thousands of users to create professional resume easily and land their dream jobs",
],
projectLink: "https://www.openresume.com",
},
],
skills: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,9 @@ export const extractProject = (sections: ResumeSectionToLines) => {
const descriptionsLines = subsectionLines.slice(descriptionsLineIdx);
const descriptions = getBulletPointsFromLines(descriptionsLines);

projects.push({ project, date, descriptions });
const projectLink = "";

projects.push({ project, date, descriptions, projectLink });
projectsScores.push({
projectScores,
dateScores,
Expand Down
1 change: 1 addition & 0 deletions src/app/lib/redux/resumeSlice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ export const initialProject: ResumeProject = {
project: "",
date: "",
descriptions: [],
projectLink: "",
};

export const initialFeaturedSkill: FeaturedSkill = { skill: "", rating: 4 };
Expand Down
1 change: 1 addition & 0 deletions src/app/lib/redux/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ export interface ResumeProject {
project: string;
date: string;
descriptions: string[];
projectLink: string;
}

export interface FeaturedSkill {
Expand Down