chore: create initial project snapshot
Capture the portfolio source, design references, and production assets with repository-specific ignore rules.
This commit is contained in:
81
src/data/skills.ts
Normal file
81
src/data/skills.ts
Normal file
@@ -0,0 +1,81 @@
|
||||
export interface SkillCategory {
|
||||
name: string;
|
||||
level: number; // 1 to 5
|
||||
}
|
||||
|
||||
export interface ToolItem {
|
||||
id: string;
|
||||
name: string;
|
||||
icon: string;
|
||||
category: ('software-engineering' | 'product-management' | 'design-ux')[];
|
||||
}
|
||||
|
||||
export const skillCategories: SkillCategory[] = [
|
||||
{ name: 'Backend', level: 5 },
|
||||
{ name: 'Databases', level: 4 },
|
||||
{ name: 'Testing & Quality', level: 3 },
|
||||
{ name: 'System Design', level: 3 },
|
||||
{ name: 'Frontend', level: 5 },
|
||||
{ name: 'DevOps', level: 2 },
|
||||
{ name: 'Web Scraping', level: 3 },
|
||||
{ name: 'Version Control', level: 4 },
|
||||
];
|
||||
|
||||
export const keywordBadges: string[] = [
|
||||
'Documentation',
|
||||
'Authentication',
|
||||
'Authorization',
|
||||
'OAuth2',
|
||||
'JWT',
|
||||
'Caching',
|
||||
'Rate Limiting',
|
||||
'Throttling',
|
||||
'WebSockets',
|
||||
'Background Job',
|
||||
'Web Scraping',
|
||||
'Bash Scripting',
|
||||
'Microservices',
|
||||
'Performance Optimization',
|
||||
'Third-Party Integration',
|
||||
];
|
||||
|
||||
export const toolsList: ToolItem[] = [
|
||||
// Row 1
|
||||
{ id: 'vscode', name: 'VS Code', icon: '/images/tools/vscode.png', category: ['software-engineering'] },
|
||||
{ id: 'codex', name: 'Codex', icon: '/images/tools/codex.png', category: ['software-engineering', 'product-management'] },
|
||||
{ id: 'antigravity', name: 'Antigravity', icon: '/images/tools/antigravity.png', category: ['software-engineering', 'product-management'] },
|
||||
{ id: 'git', name: 'Git', icon: '/images/tools/git.png', category: ['software-engineering'] },
|
||||
{ id: 'github', name: 'GitHub', icon: '/images/tools/github.png', category: ['software-engineering', 'product-management'] },
|
||||
{ id: 'python', name: 'Python', icon: '/images/tools/python.png', category: ['software-engineering'] },
|
||||
{ id: 'django', name: 'Django', icon: '/images/tools/django.png', category: ['software-engineering'] },
|
||||
{ id: 'fastapi', name: 'FastAPI', icon: '/images/tools/fastapi.png', category: ['software-engineering'] },
|
||||
// Row 2
|
||||
{ id: 'celery', name: 'Celery', icon: '/images/tools/celery.png', category: ['software-engineering'] },
|
||||
{ id: 'postgresql', name: 'PostgreSQL', icon: '/images/tools/postgresql.png', category: ['software-engineering'] },
|
||||
{ id: 'redis', name: 'Redis', icon: '/images/tools/redis.png', category: ['software-engineering'] },
|
||||
{ id: 'neo4j', name: 'Neo4j', icon: '/images/tools/neo4j.png', category: ['software-engineering'] },
|
||||
{ id: 'mongodb', name: 'MongoDB', icon: '/images/tools/mongodb.png', category: ['software-engineering'] },
|
||||
{ id: 'typescript', name: 'TypeScript', icon: '/images/tools/typescript.png', category: ['software-engineering'] },
|
||||
{ id: 'react', name: 'React', icon: '/images/tools/react.png', category: ['software-engineering', 'design-ux'] },
|
||||
{ id: 'nextjs', name: 'Next.js', icon: '/images/tools/nextjs.png', category: ['software-engineering', 'design-ux'] },
|
||||
// Row 3
|
||||
{ id: 'linux', name: 'Linux', icon: '/images/tools/linux.png', category: ['software-engineering'] },
|
||||
{ id: 'docker', name: 'Docker', icon: '/images/tools/docker.png', category: ['software-engineering'] },
|
||||
{ id: 'nginx', name: 'Nginx', icon: '/images/tools/nginx.png', category: ['software-engineering'] },
|
||||
{ id: 'caddy', name: 'Caddy', icon: '/images/tools/caddy.png', category: ['software-engineering'] },
|
||||
{ id: 'minio', name: 'MinIO', icon: '/images/tools/minio.png', category: ['software-engineering'] },
|
||||
{ id: 'prometheus', name: 'Prometheus', icon: '/images/tools/prometheus.png', category: ['software-engineering'] },
|
||||
{ id: 'grafana', name: 'Grafana', icon: '/images/tools/grafana.png', category: ['software-engineering', 'product-management'] },
|
||||
{ id: 'kubernetes', name: 'Kubernetes', icon: '/images/tools/kubernetes.png', category: ['software-engineering'] },
|
||||
];
|
||||
|
||||
export interface FilterTab {
|
||||
id: 'software-engineering' | 'product-management' | 'design-ux';
|
||||
label: string;
|
||||
}
|
||||
|
||||
export const filterTabs: FilterTab[] = [
|
||||
{ id: 'software-engineering', label: 'Software Engineering' },
|
||||
{ id: 'product-management', label: 'Product Management' },
|
||||
{ id: 'design-ux', label: 'Design & UX' },
|
||||
];
|
||||
Reference in New Issue
Block a user