From 317bd3aef9cb95fade863af9bd6279bb4dccede7 Mon Sep 17 00:00:00 2001 From: boilerrat <128boilerrat@gmail.com> Date: Wed, 8 Jan 2025 05:55:36 -0500 Subject: [PATCH] updates to components --- index.html | 29 ++++++++++++--- src/components/Contact/index.tsx | 24 +++++++------ src/components/Expertise/index.tsx | 55 ++++++++++++++++++++++------- src/components/Hero/index.tsx | 16 +++++---- src/components/Navigation/index.tsx | 7 ++-- src/components/Skills/index.tsx | 21 +++++------ 6 files changed, 107 insertions(+), 45 deletions(-) diff --git a/index.html b/index.html index e4b78ea..34b2628 100644 --- a/index.html +++ b/index.html @@ -1,13 +1,34 @@ - + - + + + + + + + + + + + - Vite + React + TS + + + + Chris Wylde | Web3 Futurist + + + + + + + +
- + \ No newline at end of file diff --git a/src/components/Contact/index.tsx b/src/components/Contact/index.tsx index 4057005..6a5a59f 100644 --- a/src/components/Contact/index.tsx +++ b/src/components/Contact/index.tsx @@ -62,11 +62,13 @@ export const Contact: FC = ({ }) => { return (
-
-

- Connect With Me -

-
+
+
+

+ Connect With Me +

+
+
{socialLinks.map((category, index) => ( = ({
); +const defaultIndustryExperience: ExperienceItem[] = [ + { + title: "Journeyman Boilermaker", + company: "International Brotherhood of Boilermakers", + period: "2003 - Present", + description: "Two decades of experience across industrial sectors, specializing in pressure vessels, heat exchangers, and critical infrastructure. Led teams in major projects nationwide.", + icon: Wrench + }, + { + title: "Industrial Operations", + company: "Multiple Sectors", + period: "2003 - Present", + description: "Extensive experience in oil refineries, steel mills, and power generation facilities. Specialized in maintenance, repairs, and large-scale equipment installations.", + icon: Factory + } +]; + const defaultNuclearExperience: ExperienceItem[] = [ { title: "Radiation Protection", company: "Makwa-Cahill/Nuvia", period: "2019 - Present", - description: "Delivering comprehensive Radiation Protection services for Bruce Nuclear's Major Component Replacement Project.", + description: "Lead Radiation Protection Specialist for Bruce Nuclear's Major Component Replacement Project. Managing radiological safety for one of North America's largest nuclear refurbishment projects.", icon: Shield }, { - title: "Journeyman Boilermaker", - company: "International Brotherhood of Boilermakers", + title: "Nuclear Maintenance and Refurbishment", + company: "Multiple Nuclear Facilities", period: "2003 - Present", - description: "Leading diverse projects in nuclear facilities, focusing on reactor refurbishment at top facilities.", - icon: Binary + description: "20 years of nuclear experience including Pickering, Darlington, and Bruce Power. Specialized focus on reactor refurbishment and maintenance", + icon: Power } ]; const defaultWeb3Experience: ExperienceItem[] = [ { - title: "Public HAUS Champion", + title: "DAO Governance Lead", company: "Public HAUS", period: "2022 - Present", - description: "Secured $197K in grants from Moloch DAO, Optimism, and Public Nouns. Leading onboarding and governance.", + description: "Secured $300K+ in grants through governance proposals to Moloch DAO, Optimism, Plurality Labs and Public Nouns. Pioneering governance frameworks and community development initiatives.", icon: Users }, { - title: "Founder", - company: "DAO Masons", + title: "Web3 Innovation", + company: "DAO Masons & MetaCartel", period: "2022 - 2024", - description: "Distributed $100K ARB tokens through Grant Ships, empowering decentralized organizations.", - icon: Award + description: "Founded DAO Masons, led Grant Ships program distributing $100K ARB tokens. Active contributor to MetaCartel, driving Web3 adoption and innovation in DAOs.", + icon: Coins } ]; @@ -91,6 +108,16 @@ export const Expertise: React.FC = ({ return (
+ {/* Industry Section */} +
+ {/* Nuclear Section */}
= ({
); -}; \ No newline at end of file +}; + +export default Expertise; \ No newline at end of file diff --git a/src/components/Hero/index.tsx b/src/components/Hero/index.tsx index 354babd..90cfda5 100644 --- a/src/components/Hero/index.tsx +++ b/src/components/Hero/index.tsx @@ -7,12 +7,14 @@ const defaultIntroText = `> const profile = { alias: "boilerrat", roles: [ "Radiation Protection Specialist", + "Journeyman Boilermaker", "Web3 Innovator", "DAO Designer" ], expertise: { - nuclear: "19+ years in Radiation Protection", - web3: "Lead multiple DAOs, $300K+ in grants" + boilermaker: "20+ years across industrial sectors, nationwide experience", + nuclear: "20 years total, 8 years specialized in radiation protection", + web3: "Lead multiple DAOs, $300K+ in grants secured and distributed" } };`; @@ -42,7 +44,7 @@ const quickLinks: QuickLink[] = [ } ]; -export const Hero: React.FC = ({ +export const Hero: React.FC = ({ className = '', customIntroText }) => { @@ -95,10 +97,10 @@ export const Hero: React.FC = ({

- Bridging Nuclear & Web3 + Bridging Industry & Web3

- Building the future of decentralized governance while ensuring nuclear safety + Bringing decades of industrial expertise to decentralized innovation

@@ -121,4 +123,6 @@ export const Hero: React.FC = ({
); -}; \ No newline at end of file +}; + +export default Hero; \ No newline at end of file diff --git a/src/components/Navigation/index.tsx b/src/components/Navigation/index.tsx index 6a6b76a..24aa8b2 100644 --- a/src/components/Navigation/index.tsx +++ b/src/components/Navigation/index.tsx @@ -1,5 +1,5 @@ import React, { useState, useEffect, useCallback } from 'react'; -import { Home, Atom, Database, Award, Image, User } from 'lucide-react'; +import { Home, Atom, Database, Award, Image, User, Factory } from 'lucide-react'; import { NavItem } from '../../types'; import { NavigationProps, ScrollState } from './types'; @@ -15,6 +15,7 @@ export const Navigation: React.FC = ({ const defaultNavItems: NavItem[] = [ { id: 'home', icon: Home, label: 'Home' }, + { id: 'industry', icon: Factory, label: 'Industry' }, { id: 'nuclear', icon: Atom, label: 'Nuclear' }, { id: 'web3', icon: Database, label: 'Web3' }, { id: 'achievements', icon: Award, label: 'Achievements' }, @@ -92,4 +93,6 @@ export const Navigation: React.FC = ({ ); -}; \ No newline at end of file +}; + +export default Navigation; \ No newline at end of file diff --git a/src/components/Skills/index.tsx b/src/components/Skills/index.tsx index eb3a183..32a8d1c 100644 --- a/src/components/Skills/index.tsx +++ b/src/components/Skills/index.tsx @@ -2,16 +2,15 @@ import type { FC } from 'react'; import { ChevronRight } from 'lucide-react'; import type { SkillsProps, SkillCardProps, SkillBarProps, Skill } from './types'; -const SkillBar: FC = ({ - level, +const SkillBar: FC = ({ + level, maxLevel = 5, className = '' }) => { const percentage = (level / maxLevel) * 100; - return (
-
@@ -19,9 +18,9 @@ const SkillBar: FC = ({ ); }; -const SkillCard: FC = ({ +const SkillCard: FC = ({ skill, - className = '' + className = '' }) => (
@@ -120,13 +119,13 @@ export const Skills: FC = ({ }) => { return (
-
-
+
+

Professional Skills

-
+
{skills.map((skill, index) => ( ))} @@ -134,4 +133,6 @@ export const Skills: FC = ({
); -}; \ No newline at end of file +}; + +export default Skills; \ No newline at end of file