Skip to content

Commit 6a84acd

Browse files
committed
Version 2.0.1
1 parent d797883 commit 6a84acd

13 files changed

Lines changed: 407 additions & 427 deletions

File tree

app/career/page.tsx

Lines changed: 3 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,9 @@
1-
// import { CareerProgression } from '@/components/organisms/career-progression';
2-
import CareerProgression from '@/components/organisms/career-timeline';
3-
import { CareerTimeline } from '@/lib/careerTimeline';
1+
import CareerView from '@/components/templates/career';
42

5-
export default function CareerPage() {
3+
export default function Page() {
64
return (
75
<main className="min-h-screen pt-20">
8-
<section className="mx-auto max-w-6xl px-4 py-16 sm:px-6 md:py-24 lg:px-8">
9-
<div className="space-y-12 md:space-y-16">
10-
{/* Header */}
11-
<div className="animate-fade-in space-y-4">
12-
<h1 className="text-4xl font-bold sm:text-5xl md:text-6xl">
13-
Career <span className="text-primary">Journey</span>
14-
</h1>
15-
<p className="text-muted-foreground max-w-3xl text-lg md:text-xl">
16-
A timeline of my professional experience, from military service to
17-
software engineering leadership.
18-
</p>
19-
</div>
20-
21-
{/* Career Progression */}
22-
<div className="animate-fade-in-delay-1">
23-
<CareerProgression items={CareerTimeline} />
24-
</div>
25-
</div>
26-
</section>
6+
<CareerView />
277
</main>
288
);
299
}

app/global.d.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// Type declarations for CSS and other asset imports in Next.js
2+
3+
// CSS files
4+
declare module '*.css' {
5+
const content: any;
6+
export default content;
7+
}
8+
9+
// CSS modules
10+
declare module '*.module.css' {
11+
const classes: { [key: string]: string };
12+
export default classes;
13+
}

app/not-found.tsx

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import { ArrowLeft, SearchX } from 'lucide-react';
2+
import Link from 'next/link';
3+
4+
export default function NotFound() {
5+
return (
6+
<main className="min-h-screen pt-20">
7+
<div className="flex min-h-[60vh] flex-col items-center justify-center px-4">
8+
<div className="animate-fade-in text-center">
9+
{/* Icon */}
10+
<div className="mb-6 flex justify-center">
11+
<div className="bg-muted/50 rounded-full p-6">
12+
<SearchX className="text-muted-foreground h-16 w-16" />
13+
</div>
14+
</div>
15+
16+
{/* Title */}
17+
<h1 className="mb-4 text-4xl font-bold sm:text-5xl">
18+
Page Not Found
19+
</h1>
20+
21+
{/* Description */}
22+
<p className="text-muted-foreground mb-8 max-w-md text-lg">
23+
The page you're looking for doesn't exist or may have been removed.
24+
</p>
25+
26+
{/* Back Button */}
27+
<Link
28+
href="/"
29+
className="bg-primary text-primary-foreground hover:bg-primary/90 inline-flex items-center gap-2 rounded-lg px-6 py-3 font-medium transition-colors"
30+
>
31+
<ArrowLeft size={20} />
32+
<span>Back to Home</span>
33+
</Link>
34+
</div>
35+
</div>
36+
</main>
37+
);
38+
}

app/page.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import Homepage from '@/components/templates/home';
1+
import HomeView from '@/components/templates/home';
22

33
export default function Page() {
4-
return <Homepage />;
4+
return <HomeView />;
55
}

app/projects/[id]/page.tsx

Lines changed: 3 additions & 276 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
1-
import { ImageCarousel } from '@/components/organisms/image-carousel';
2-
import { TechStackDiagram } from '@/components/organisms/tech-stack-diagram';
3-
import { Badge } from '@/components/ui/badge';
1+
import ProjectDetailsView from '@/components/templates/projectDetails';
42
import { Projects } from '@/lib/projects';
5-
import { ArrowLeft, Briefcase, ExternalLink, Github } from 'lucide-react';
6-
import Link from 'next/link';
73
import { notFound } from 'next/navigation';
84

95
// Generate static params for all project pages at build time
@@ -13,179 +9,7 @@ export async function generateStaticParams() {
139
}));
1410
}
1511

16-
// Project data with detailed information
17-
const projectsData: Record<
18-
string,
19-
{
20-
title: string;
21-
domains: string[];
22-
technologies: string[];
23-
images: string[];
24-
githubUrl?: string;
25-
liveUrl?: string;
26-
fullDescription: string[];
27-
techStack: { name: string; icon: string }[];
28-
careerExperience?: string;
29-
}
30-
> = {
31-
'ecommerce-platform': {
32-
title: 'E-Commerce Platform',
33-
domains: ['Web', 'Data'],
34-
technologies: ['React', 'TypeScript', 'Node.js', 'PostgreSQL'],
35-
images: [
36-
'/modern-ecommerce-dashboard.png',
37-
'/ecommerce-product-page.png',
38-
'/ecommerce-checkout-flow.png',
39-
],
40-
githubUrl: 'https://github.com',
41-
liveUrl: 'https://example.com',
42-
fullDescription: [
43-
'A comprehensive full-stack e-commerce platform designed to handle high-traffic retail operations with real-time inventory management, secure payment processing, and an intuitive admin dashboard.',
44-
'The platform features a modern, responsive design that provides an exceptional shopping experience across all devices. Built with performance in mind, it utilizes server-side rendering and optimized database queries to ensure fast page loads even under heavy traffic.',
45-
'Key features include advanced product search with filters, user authentication and profiles, shopping cart with persistent sessions, multiple payment gateway integrations, order tracking, and comprehensive analytics for business insights.',
46-
'The admin dashboard provides real-time insights into sales, inventory levels, and customer behavior, enabling data-driven decision making. The system also includes automated email notifications, inventory alerts, and customer support ticketing.',
47-
],
48-
techStack: [
49-
{ name: 'React', icon: '⚛️' },
50-
{ name: 'TypeScript', icon: '📘' },
51-
{ name: 'Node.js', icon: '🟢' },
52-
{ name: 'PostgreSQL', icon: '🐘' },
53-
{ name: 'Redis', icon: '🔴' },
54-
{ name: 'Stripe', icon: '💳' },
55-
],
56-
careerExperience: 'Senior Software Engineer at Tech Innovations Inc.',
57-
},
58-
'mobile-fitness-app': {
59-
title: 'Fitness Tracking App',
60-
domains: ['Mobile'],
61-
technologies: ['React Native', 'TypeScript', 'Node.js'],
62-
images: [
63-
'/fitness-tracking-app.png',
64-
'/fitness-workout-tracking.jpg',
65-
'/fitness-nutrition-dashboard.jpg',
66-
],
67-
githubUrl: 'https://github.com',
68-
fullDescription: [
69-
'A cross-platform mobile application that helps users track their fitness journey, monitor workouts, log nutrition, and achieve their health goals through personalized recommendations and social features.',
70-
'The app features real-time synchronization across devices, allowing users to seamlessly switch between their phone, tablet, and web browser. It includes a comprehensive exercise library with video demonstrations, custom workout builder, and progress tracking with detailed analytics.',
71-
'Social features enable users to connect with friends, share achievements, and participate in challenges. The app also integrates with popular wearables and health platforms to provide a unified view of all fitness data.',
72-
'Machine learning algorithms analyze user behavior and progress to provide personalized workout recommendations and nutrition suggestions, helping users stay motivated and achieve their goals faster.',
73-
],
74-
techStack: [
75-
{ name: 'React Native', icon: '📱' },
76-
{ name: 'TypeScript', icon: '📘' },
77-
{ name: 'Node.js', icon: '🟢' },
78-
{ name: 'MongoDB', icon: '🍃' },
79-
{ name: 'GraphQL', icon: '◼️' },
80-
],
81-
careerExperience: 'Frontend Developer at Creative Web Agency',
82-
},
83-
'defi-protocol': {
84-
title: 'DeFi Lending Protocol',
85-
domains: ['Blockchain', 'Web'],
86-
technologies: ['Solidity', 'React', 'TypeScript'],
87-
images: [
88-
'/blockchain-defi-cryptocurrency-interface.jpg',
89-
'/blockchain-smart-contract-dashboard.jpg',
90-
'/cryptocurrency-lending-interface.jpg',
91-
],
92-
githubUrl: 'https://github.com',
93-
fullDescription: [
94-
'A decentralized finance protocol that enables peer-to-peer lending and borrowing of digital assets without intermediaries. Built on Ethereum, the protocol uses smart contracts to automate loan origination, collateral management, and interest calculations.',
95-
'The protocol features automated market-making algorithms that dynamically adjust interest rates based on supply and demand, ensuring optimal capital efficiency. All smart contracts have been thoroughly audited by leading security firms to ensure the safety of user funds.',
96-
'Users can supply assets to earn interest or borrow against their collateral with competitive rates. The protocol supports multiple cryptocurrencies and stablecoins, with real-time liquidation mechanisms to maintain system solvency.',
97-
'The web interface provides an intuitive dashboard for managing positions, monitoring market conditions, and analyzing historical performance. Advanced users can interact directly with smart contracts for maximum flexibility.',
98-
],
99-
techStack: [
100-
{ name: 'Solidity', icon: '⬢' },
101-
{ name: 'React', icon: '⚛️' },
102-
{ name: 'TypeScript', icon: '📘' },
103-
{ name: 'Ethers.js', icon: '🔗' },
104-
{ name: 'Hardhat', icon: '⚒️' },
105-
],
106-
careerExperience: 'Junior Developer at StartUp Ventures',
107-
},
108-
'data-analytics-dashboard': {
109-
title: 'Analytics Dashboard',
110-
domains: ['Data', 'Web'],
111-
technologies: ['React', 'Python', 'PostgreSQL', 'TypeScript'],
112-
images: [
113-
'/data-analytics-dashboard-charts-graphs.jpg',
114-
'/data-visualization-charts.png',
115-
'/analytics-reporting-dashboard.jpg',
116-
],
117-
githubUrl: 'https://github.com',
118-
fullDescription: [
119-
'A real-time data analytics platform that processes and visualizes millions of data points with sub-second query performance. Designed for enterprise use, it provides interactive dashboards, custom reporting, and advanced data exploration capabilities.',
120-
'The platform features a powerful query engine built on PostgreSQL with custom optimizations for analytical workloads. It supports complex aggregations, time-series analysis, and predictive modeling, all accessible through an intuitive visual interface.',
121-
'Users can create custom dashboards with drag-and-drop widgets, set up automated reports, and configure alerts for key metrics. The system includes role-based access control, audit logging, and data export capabilities for compliance requirements.',
122-
'Built with scalability in mind, the platform can handle growing data volumes through horizontal scaling and intelligent caching strategies. It integrates with popular data sources and supports real-time streaming data ingestion.',
123-
],
124-
techStack: [
125-
{ name: 'React', icon: '⚛️' },
126-
{ name: 'Python', icon: '🐍' },
127-
{ name: 'PostgreSQL', icon: '🐘' },
128-
{ name: 'TypeScript', icon: '📘' },
129-
{ name: 'D3.js', icon: '📊' },
130-
{ name: 'Apache Kafka', icon: '🔄' },
131-
],
132-
careerExperience: 'Full Stack Developer at Digital Solutions Co.',
133-
},
134-
'ai-content-generator': {
135-
title: 'AI Content Generator',
136-
domains: ['AI/ML', 'Web'],
137-
technologies: ['Python', 'React', 'TypeScript', 'Next.js'],
138-
images: [
139-
'/ai-artificial-intelligence-content-creation.jpg',
140-
'/ai-content-writing-interface.png',
141-
'/ai-image-generation-dashboard.jpg',
142-
],
143-
githubUrl: 'https://github.com',
144-
fullDescription: [
145-
'An AI-powered content generation platform that helps marketing teams create high-quality copy, images, and social media posts using state-of-the-art machine learning models. The platform combines multiple AI models to provide comprehensive content creation capabilities.',
146-
'The text generation engine uses advanced language models fine-tuned for marketing content, capable of producing blog posts, product descriptions, email campaigns, and social media content that matches your brand voice and style.',
147-
'Image generation features allow users to create custom visuals from text descriptions, edit existing images, and generate variations. The platform includes a built-in editor for refining AI-generated content and maintaining brand consistency.',
148-
'Team collaboration features enable multiple users to work together, share templates, and maintain a content library. The platform also provides analytics on content performance and A/B testing capabilities to optimize engagement.',
149-
],
150-
techStack: [
151-
{ name: 'Python', icon: '🐍' },
152-
{ name: 'React', icon: '⚛️' },
153-
{ name: 'TypeScript', icon: '📘' },
154-
{ name: 'Next.js', icon: '▲' },
155-
{ name: 'OpenAI', icon: '🤖' },
156-
{ name: 'TensorFlow', icon: '🧠' },
157-
],
158-
careerExperience: 'Senior Software Engineer at Tech Innovations Inc.',
159-
},
160-
'devops-automation': {
161-
title: 'DevOps Automation Suite',
162-
domains: ['DevSecOps'],
163-
technologies: ['Python', 'Node.js', 'TypeScript'],
164-
images: [
165-
'/devops-automation-pipeline-dashboard.jpg',
166-
'/ci-cd-pipeline-visualization.jpg',
167-
'/infrastructure-monitoring-dashboard.jpg',
168-
],
169-
githubUrl: 'https://github.com',
170-
fullDescription: [
171-
'A comprehensive CI/CD pipeline automation suite that streamlines software delivery across multiple cloud providers. The platform implements infrastructure as code, automated testing, security scanning, and deployment orchestration in a unified workflow.',
172-
'The system supports complex deployment strategies including blue-green deployments, canary releases, and rolling updates with automatic rollback capabilities. It integrates with popular version control systems and provides detailed deployment history and audit trails.',
173-
'Security is built into every stage of the pipeline with automated vulnerability scanning, dependency checking, and compliance validation. The platform includes policy enforcement to ensure all deployments meet organizational standards.',
174-
'Real-time monitoring and alerting provide visibility into pipeline performance, deployment success rates, and infrastructure health. The dashboard offers customizable views for different team roles, from developers to operations managers.',
175-
],
176-
techStack: [
177-
{ name: 'Python', icon: '🐍' },
178-
{ name: 'Node.js', icon: '🟢' },
179-
{ name: 'TypeScript', icon: '📘' },
180-
{ name: 'Docker', icon: '🐳' },
181-
{ name: 'Kubernetes', icon: '☸️' },
182-
{ name: 'Terraform', icon: '🏗️' },
183-
],
184-
careerExperience: 'Full Stack Developer at Digital Solutions Co.',
185-
},
186-
};
187-
188-
export default async function ProjectDetailPage({
12+
export default async function Page({
18913
params,
19014
}: {
19115
params: Promise<{ id: string }>;
@@ -199,104 +23,7 @@ export default async function ProjectDetailPage({
19923

20024
return (
20125
<main className="min-h-screen pt-20">
202-
<div className="mx-auto max-w-5xl px-4 pb-12 sm:px-6 md:pb-20 lg:px-8">
203-
{/* Back Button and Title */}
204-
<div className="animate-fade-in mb-8 space-y-4">
205-
<Link
206-
href="/projects"
207-
className="text-muted-foreground hover:text-primary inline-flex items-center gap-2 transition-colors"
208-
>
209-
<ArrowLeft size={20} />
210-
<span>Back to Projects</span>
211-
</Link>
212-
<h1 className="text-4xl font-bold sm:text-5xl md:text-6xl">
213-
{project.title}
214-
</h1>
215-
216-
{project.careerExperience && (
217-
<div className="bg-primary/10 text-primary border-primary/20 inline-flex items-center gap-2 rounded-md border px-3 py-1.5 text-sm">
218-
<Briefcase size={14} />
219-
<span>{project.careerExperience}</span>
220-
</div>
221-
)}
222-
</div>
223-
224-
{/* Vertical Layout */}
225-
<div className="space-y-8">
226-
{/* Image Carousel */}
227-
{project.images.length > 0 && (
228-
<div className="animate-fade-in-delay-1">
229-
<ImageCarousel images={project.images} alt={project.title} />
230-
</div>
231-
)}
232-
233-
{/* Project Details */}
234-
<div className="animate-fade-in-delay-2 space-y-8">
235-
{/* Category Badges and Links */}
236-
<div className="flex flex-wrap items-center gap-3">
237-
{project.domains.map((domain) => (
238-
<Badge key={domain} variant="secondary" className="text-sm">
239-
{domain}
240-
</Badge>
241-
))}
242-
{project.githubUrl && (
243-
<a
244-
href={project.githubUrl}
245-
target="_blank"
246-
rel="noopener noreferrer"
247-
className="text-muted-foreground hover:text-primary p-2 transition-colors"
248-
aria-label="View on GitHub"
249-
>
250-
<Github size={20} />
251-
</a>
252-
)}
253-
{project.liveUrl && (
254-
<a
255-
href={project.liveUrl}
256-
target="_blank"
257-
rel="noopener noreferrer"
258-
className="text-muted-foreground hover:text-primary p-2 transition-colors"
259-
aria-label="View live site"
260-
>
261-
<ExternalLink size={20} />
262-
</a>
263-
)}
264-
</div>
265-
266-
{/* Full Description */}
267-
<div className="space-y-4">
268-
{project.fullDescription.map((paragraph, index) => (
269-
<p
270-
key={index}
271-
className="text-muted-foreground text-base leading-relaxed"
272-
>
273-
{paragraph}
274-
</p>
275-
))}
276-
</div>
277-
278-
{/* Tech Stack */}
279-
<div className="space-y-1">
280-
<h2 className="flex items-center gap-2 text-xl font-bold">
281-
<span>🛠️</span>
282-
<span>Tech Stack</span>
283-
</h2>
284-
<TechStackDiagram technologies={project.technologies} />
285-
{/* Old Tech Stack Implementation - Commented Out */}
286-
{/* <div className="flex flex-wrap gap-3">
287-
{project.technologies.map((tech) => (
288-
<div
289-
key={tech}
290-
className="bg-card border-border hover:border-primary flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors"
291-
>
292-
<span className="text-sm font-medium">{tech}</span>
293-
</div>
294-
))}
295-
</div> */}
296-
</div>
297-
</div>
298-
</div>
299-
</div>
26+
<ProjectDetailsView project={project} />
30027
</main>
30128
);
30229
}

0 commit comments

Comments
 (0)