-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtypes.ts
More file actions
67 lines (59 loc) · 1.31 KB
/
types.ts
File metadata and controls
67 lines (59 loc) · 1.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
export type Section = "home" | "about" | "projects" | "resume" | "blog" | "journey" | "contact";
export interface Project {
id: number;
title: string;
description: string;
tech: string[];
imageUrl: string;
liveUrl?: string;
repoUrl?: string;
}
export interface Skill {
name: string;
level: number; // e.g., 1-5 for proficiency
category: "Frontend" | "Backend" | "DevOps" | "Tools" | "Web3";
}
export interface JourneyGalleryItem {
imageUrl: string;
description: string;
}
export interface JourneyEntry {
id: number;
role: string;
company: string;
period: string;
details: string[];
gallery: JourneyGalleryItem[];
}
export type ThemeName =
| 'holo-cyan'
| 'synth-magenta'
| 'plasma-green'
| 'solar-flare'
| 'neon-purple'
| 'ocean-blue'
| 'matrix-green'
| 'cosmic-pink'
| 'electric-yellow'
| 'arctic-ice'
| 'volcanic-red'
| 'aurora-violet'
| 'midnight-blue'
| 'sunset-orange';
export interface Theme {
name: ThemeName;
colors: {
primary: string;
secondary: string;
};
}
export type BlogCategory = 'AI' | 'Frontend' | 'Backend' | 'Rust' | 'Database' | 'General' | 'Blockchain';
export interface BlogPost {
id: number;
slug: string;
title: string;
excerpt: string;
category: BlogCategory;
date: string;
content: string; // Markdown content
}