mirror of
https://github.com/rjNemo/devbook_ts
synced 2026-06-12 13:36:43 +00:00
profile-top
This commit is contained in:
parent
fa353664fb
commit
37344590b7
2 changed files with 21 additions and 42 deletions
|
|
@ -39,10 +39,7 @@ export class Dev implements IDev {
|
||||||
status = 'Developer';
|
status = 'Developer';
|
||||||
company = '';
|
company = '';
|
||||||
avatarUrl = '';
|
avatarUrl = '';
|
||||||
/** create profile tagline */
|
description = '';
|
||||||
get description(): string {
|
|
||||||
return `${this.status} at ${this.company}`;
|
|
||||||
}
|
|
||||||
location = '';
|
location = '';
|
||||||
skills: string[] = [];
|
skills: string[] = [];
|
||||||
links: Links = {
|
links: Links = {
|
||||||
|
|
@ -59,35 +56,6 @@ export class Dev implements IDev {
|
||||||
educations: Education[] = [];
|
educations: Education[] = [];
|
||||||
repos: Repo[] = [];
|
repos: Repo[] = [];
|
||||||
}
|
}
|
||||||
//
|
|
||||||
// export const getDescription = (status: string, company: string) =>
|
|
||||||
// `${status} at ${company}`;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*/
|
|
||||||
// export const blankDev = {
|
|
||||||
// isActive: true,
|
|
||||||
// displayName: '',
|
|
||||||
// status: 'Developer',
|
|
||||||
// company: '',
|
|
||||||
// avatarUrl: '',
|
|
||||||
// description: '',
|
|
||||||
// location: '',
|
|
||||||
// skills: [],
|
|
||||||
// links: {
|
|
||||||
// website: '',
|
|
||||||
// instagram: '',
|
|
||||||
// facebook: '',
|
|
||||||
// linkedin: '',
|
|
||||||
// twitter: '',
|
|
||||||
// github: '',
|
|
||||||
// youtube: '',
|
|
||||||
// },
|
|
||||||
// bio: '',
|
|
||||||
// experiences: [],
|
|
||||||
// educations: [],
|
|
||||||
// repos: [],
|
|
||||||
// };
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* sample Dev for development and tests
|
* sample Dev for development and tests
|
||||||
|
|
@ -196,6 +164,7 @@ export const developers: DevSummary[] = [
|
||||||
avatarUrl:
|
avatarUrl:
|
||||||
'https://lh3.googleusercontent.com/a-/AOh14GhncH95MWKwPR3TRKy4eVd4n6w0-fobe4dhiam2xA',
|
'https://lh3.googleusercontent.com/a-/AOh14GhncH95MWKwPR3TRKy4eVd4n6w0-fobe4dhiam2xA',
|
||||||
description: 'Fullstack Engineer at DESY',
|
description: 'Fullstack Engineer at DESY',
|
||||||
|
|
||||||
location: 'Hamburg, DE',
|
location: 'Hamburg, DE',
|
||||||
skills: ['React', 'TypeScript', 'Redux', 'Nodejs'],
|
skills: ['React', 'TypeScript', 'Redux', 'Nodejs'],
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ import {
|
||||||
faInstagram,
|
faInstagram,
|
||||||
faLinkedin,
|
faLinkedin,
|
||||||
faTwitter,
|
faTwitter,
|
||||||
|
faYoutube,
|
||||||
} from '@fortawesome/free-brands-svg-icons';
|
} from '@fortawesome/free-brands-svg-icons';
|
||||||
import {
|
import {
|
||||||
faGlobe,
|
faGlobe,
|
||||||
|
|
@ -26,7 +27,7 @@ import {
|
||||||
faCodeBranch,
|
faCodeBranch,
|
||||||
} from '@fortawesome/free-solid-svg-icons';
|
} from '@fortawesome/free-solid-svg-icons';
|
||||||
// Typing
|
// Typing
|
||||||
import Dev from '../models/Dev';
|
import {Dev} from '../models/Dev';
|
||||||
import Experience from '../types/Experience';
|
import Experience from '../types/Experience';
|
||||||
import {getTimePeriod} from '../types/TimePeriod';
|
import {getTimePeriod} from '../types/TimePeriod';
|
||||||
import Education from '../types/Education';
|
import Education from '../types/Education';
|
||||||
|
|
@ -58,6 +59,8 @@ const Profile: FC<IProps> = ({dev}) => {
|
||||||
return faLinkedin;
|
return faLinkedin;
|
||||||
case 'twitter':
|
case 'twitter':
|
||||||
return faTwitter;
|
return faTwitter;
|
||||||
|
case 'youtube':
|
||||||
|
return faYoutube;
|
||||||
default:
|
default:
|
||||||
return faGlobe;
|
return faGlobe;
|
||||||
}
|
}
|
||||||
|
|
@ -74,19 +77,26 @@ const Profile: FC<IProps> = ({dev}) => {
|
||||||
<div className="profile-grid my-1">
|
<div className="profile-grid my-1">
|
||||||
<div className="profile-top bg-primary p-2">
|
<div className="profile-top bg-primary p-2">
|
||||||
<img
|
<img
|
||||||
src="https://www.gravatar.com/avatar/205e460b479e2e5b48aec07710c08d50?s=200"
|
src={dev.avatarUrl}
|
||||||
alt="Some guy"
|
alt={dev.displayName}
|
||||||
className="round-img my-1"
|
className="round-img my-1"
|
||||||
/>
|
/>
|
||||||
<h1 className="large">{dev.displayName}</h1>
|
<h1 className="large">{dev.displayName}</h1>
|
||||||
<p className="lead">{dev.description}</p>
|
<p className="lead">{`${dev.status} at ${dev.company}`}</p>
|
||||||
<p>{dev.location}</p>
|
<p>{dev.location}</p>
|
||||||
<div className="icons my-1">
|
<div className="icons my-1">
|
||||||
{/* {Object.entries(dev.links).map(([icon, webAddress], i: number) => (
|
{Object.entries(dev.links)
|
||||||
<a href={webAddress} key={i}>
|
.sort()
|
||||||
<FontAwesomeIcon icon={renderSocialIcon(icon)} size="2x" />
|
.map(([icon, webAddress], i: number) => (
|
||||||
</a>
|
<a
|
||||||
))} */}
|
href={webAddress}
|
||||||
|
key={i}
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
>
|
||||||
|
<FontAwesomeIcon icon={renderSocialIcon(icon)} size="2x" />
|
||||||
|
</a>
|
||||||
|
))}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue